【发布时间】:2017-05-04 21:31:42
【问题描述】:
我想在 Android 中获得 4 个随机值(彼此不同)1 到 4。
我写了这样的代码。但是这些值并没有什么不同。
Random random = new Random();
int number, idSearch[]=new int[4];
number = random.nextInt(4);
idSearch[0] = number;
for (int i = 1; i < 4; i++)
{
number = (int) random.nextInt(4);
for (int j = 0; j <= i; j++)
{
if (idSearch[j] == number) {
number = random.nextInt(4);
}
}
idSearch[i] = number;
}
哪里出错了?你能帮帮我吗?
【问题讨论】:
-
您正在尝试解决错误的问题。您不是在尝试获取 4 个随机数,而是在尝试以随机顺序从 1-4 获取数字。
-
对不起。我打错了。我正在尝试以随机顺序获取 1-4 中的数字。
-
List<Integer> al = IntStream.of(1, 2, 3, 4).boxed().collect(Collectors.toList()); Collections.shuffle(al); System.out.println(al);