gpt4 book ai didi

java 彩票号码

转载 作者:行者123 更新时间:2023-11-30 03:32:20 26 4
gpt4 key购买 nike

我正在制作一个类似于彩票的小程序。重点是,将生成 7 个彼此不同的数字(第七个数字除外)。我的代码是这样的:

import java.util.HashSet;
import java.util.Random;
import java.util.Set;

public class LotteryNumbers {

public static void main(String[] args) {

Random generator = new Random();
Set<Integer> seen = new HashSet<Integer>();
int index = 1;
int luckyNumber = generator.nextInt(49);

while (index < 7) {
if (seen.contains(luckyNumber)) {
continue;
}
seen.add(luckyNumber);
System.out.println("Number " + index + ": " + luckyNumber);
index++;
luckyNumber = generator.nextInt(49);
}
System.out.println("Bonus Number :" + generator.nextInt(49));
}

}

如您所见,我创建了一个名为 saw 的集合,其中存储了生成的所有数字。但是,程序无法正常工作,因为循环有时会意外停止。我的错误是什么?

谢谢。 :)

最佳答案

如果输入 if,您将陷入无限循环 - 不会生成新数字,并且在循环的每次迭代中都会计算相同的数字,并且 如果输入了

解决此问题的一种方法是在这种情况下生成另一个数字:

while (index < 7) {
if (seen.contains(luckyNumber)) {
luckyNumber = generator.nextInt(49); // here
continue;
}
seen.add(luckyNumber);
System.out.println("Number " + index + ": " + luckyNumber);
index++;
luckyNumber = generator.nextInt(49);
}
System.out.println("Bonus Number :" + generator.nextInt(49));

关于 java 彩票号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28730650/

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