我想在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;
}
错误在哪里?你能帮助我吗?
最佳答案
我认为以随机顺序生成值从1到4(含)的List<Integer>
的最简单方法是首先创建一个具有初始值的List<Integer>
并对其进行混洗:
List<Integer> list = Arrays.asList(1, 2, 3, 4);
Collections.shuffle(list);
System.out.println(list);
>> [4, 1, 3, 2]
请记住,此列表不能添加或删除。
如果您希望它可变,只需将其传递给
ArrayList
的构造函数即可:List<Integer> mutableList = new ArrayList<>(list);
切记导入
java.util.*
关于android - 从1到4以随机顺序获取数字,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43793080/