3 回答
TA贡献1829条经验 获得超7个赞
通过改组列表,您可以将 0 到 49 之间的所有数字随机放置在列表中:
questionNos.clear(); // if not empty
for (int i = 0; i < 50; i++) {
questionNos.add(i);
}
Collections.shuffle(questionNos);
TA贡献1843条经验 获得超7个赞
使用这段代码
ArrayList<Integer> numbers = new ArrayList<Integer>();
Random randomGenerator = new Random();
while (numbers.size() < 50) {
int random = randomGenerator.nextInt(50); // will generate a random number from 0 to 50
if (!numbers.contains(random)) { //will check whether the number is repeated or not
numbers.add(random); //if number is not repeated then it will add it in array
}
}
TA贡献1848条经验 获得超2个赞
您的updateQuestion().
for (int i = 0; i < 50; i++) {
questionNos.add(i);
}
因此,如果questionNos之前电话中已有 49 个问题,updateQuestion()您将收到 99 个问题,其中 98 个问题是重复的,依此类推。
把它移到只被调用一次的地方,比如构造函数。
添加回答
举报