java编程实现双色球
时间: 2024-05-06 20:16:23 浏览: 57
以下是Java编程实现双色球的示例代码:
```java
import java.util.Arrays;
import java.util.Random;
public class DoubleColorBall {
private static final int RED_BALL_NUM = 6; // 红球数量
private static final int BLUE_BALL_NUM = 1; // 蓝球数量
private static final int RED_BALL_MAX_VALUE = 33; // 红球最大值
private static final int BLUE_BALL_MAX_VALUE = 16; // 蓝球最大值
public static void main(String[] args) {
int[] redBalls = generateRandomBalls(RED_BALL_NUM, RED_BALL_MAX_VALUE);
int[] blueBalls = generateRandomBalls(BLUE_BALL_NUM, BLUE_BALL_MAX_VALUE);
System.out.println("红球:" + Arrays.toString(redBalls));
System.out.println("蓝球:" + Arrays.toString(blueBalls));
}
/**
* 生成指定数量和最大值范围内的随机号码
*
* @param num 数量
* @param max 最大值
* @return 随机号码数组
*/
private static int[] generateRandomBalls(int num, int max) {
int[] balls = new int[num];
Random random = new Random();
for (int i = 0; i < num; i++) {
int ball;
do {
ball = random.nextInt(max) + 1;
} while (contains(balls, ball));
balls[i] = ball;
}
Arrays.sort(balls);
return balls;
}
/**
* 数组中是否包含指定值
*
* @param array 数组
* @param value 指定值
* @return 是否包含
*/
private static boolean contains(int[] array, int value) {
for (int i : array) {
if (i == value) {
return true;
}
}
return false;
}
}
```
程序中定义了常量 `RED_BALL_NUM` 和 `BLUE_BALL_NUM` 分别表示红色球和蓝色球的数量,`RED_BALL_MAX_VALUE` 和 `BLUE_BALL_MAX_VALUE` 则分别表示红色球和蓝色球的最大值。
`generateRandomBalls` 方法用于生成指定数量和最大值范围内的随机号码,而 `contains` 方法则用于判断数组中是否包含指定的值。
在 `main` 方法中,先调用 `generateRandomBalls` 方法分别生成红球和蓝球的随机号码数组,然后使用 `Arrays.toString` 方法将数组转换为字符串并输出。
阅读全文