用java写双色球规则:双色球每注投注号码由6个红色球号码和一个蓝色球号码组成,红色球号码从1到33中选择;蓝色球号码从1到16中选择;请随机生成一注双色球号码(要求同色号码不重复)使用set集合完成
时间: 2024-09-23 14:12:35 浏览: 66
按照规则输出5组不重复的双色球(6个红色球+1个蓝色球)
在Java中,我们可以使用`Random`类配合`Set`数据结构来实现双色球彩票号码的随机生成,确保每个颜色的号码不重复。这里我们先创建两个独立的`HashSet`,一个用于存储红色球号码,另一个用于存储蓝色球号码。
```java
import java.util.HashSet;
import java.util.Random;
public class LotteryTicketGenerator {
public static void main(String[] args) {
// 创建红蓝两套数字集合
HashSet<Integer> redBalls = new HashSet<>();
HashSet<Integer> blueBall = new HashSet<>();
Random random = new Random();
// 红色球从1到33范围内,且避免重复
while (redBalls.size() < 6) {
int redNumber = random.nextInt(34); // 34包括33
if (!redBalls.contains(redNumber)) {
redBalls.add(redNumber);
}
}
// 蓝色球从1到16范围内,同样避免重复
while (blueBall.size() < 1) {
int blueNumber = random.nextInt(17); // 17包括16
if (!blueBall.contains(blueNumber)) {
blueBall.add(blueNumber);
}
}
// 输出结果
System.out.println("双色球号码:");
System.out.printf("红色球:%s\n", redBalls.toString());
System.out.printf("蓝色球:%d\n", blueBall.iterator().next()); // 因为蓝色球只有一个,所以直接取第一个元素
// 结果检查
阅读全文