gpt4 book ai didi

java - Java中的随机数数组 - 想要升序排序

转载 作者:行者123 更新时间:2023-12-01 07:13:19 25 4
gpt4 key购买 nike

我正在用 Java 创建随机数生成器,作为我正在编写的程序的一部分,以更好地学习该语言(来自更多 C#/C++ 背景)。

    ArrayList<Integer> al = new ArrayList<Integer>();
Random ran = new Random();
for(int i = 1; i <= 11; i++)
al.add(i);


for(int i = 0; i < 2; i++)
{
ArrayList<Integer> temp = new ArrayList<Integer>();
int num = al.remove(ran.nextInt(al.size()));

temp.add(num);
Arrays.sort(temp);

text("\Random Number " + i + " is: " + temp[i]);
}

在 arrays.sort(temp) 上,我遇到了没有合适的方法错误,在我的文本输出函数中,我得到了需要的数组,但找到了 java.util.ArrayList。任何人都可以建议一种更好的方法来将此随机数数组按升序排序,或者看到我目前做错的事情可以很容易地纠正吗?谢谢。

最佳答案

使用Collections.sort(temp)

在 Java 中,数组和列表是两种不同的东西。 Arrays.sort()仅适用于数组;列表的等效函数是 Collections.sort() .

我不能说我完全理解你的代码背后的逻辑,但你可能还想看看Collections.shuffle() .

编辑经过仔细检查,代码还存在其他问题:

  1. 您将从头开始重新创建 temp,因此在每次循环迭代中它将只包含一个元素。
  2. temp[i] 在语法上无效;正确的语法是temp.get(i)。即使使用正确的语法,它也会给您一个“越界”异常,因为 temp 仅包含一个元素。

关于java - Java中的随机数数组 - 想要升序排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9481989/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com