用 java 双色球号码生成器 双色球号码 红球 篮球 红球 6 个 1-33 篮球 1 个 1-16 1生成6个1至33之间的随机整数不能重复存入一个List集合 提示用户输入购买的双色球注数随机生成相应注数的双色球号码
import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Scanner;
public class DoubleColorBallGenerator { private static final int RED_BALL_MIN = 1; private static final int RED_BALL_MAX = 33; private static final int BLUE_BALL_MIN = 1; private static final int BLUE_BALL_MAX = 16; private static final int RED_BALL_COUNT = 6; private static final int BLUE_BALL_COUNT = 1;
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入购买的双色球注数:");
int count = scanner.nextInt();
for (int i = 0; i < count; i++) {
List<Integer> redBalls = generateRedBalls();
int blueBall = generateBlueBall();
Collections.sort(redBalls);
System.out.println("红球:" + redBalls + " 篮球:" + blueBall);
}
}
private static List<Integer> generateRedBalls() {
List<Integer> redBalls = new ArrayList<>();
while (redBalls.size() < RED_BALL_COUNT) {
int ball = (int) (Math.random() * (RED_BALL_MAX - RED_BALL_MIN + 1)) + RED_BALL_MIN;
if (!redBalls.contains(ball)) {
redBalls.add(ball);
}
}
return redBalls;
}
private static int generateBlueBall() {
return (int) (Math.random() * (BLUE_BALL_MAX - BLUE_BALL_MIN + 1)) + BLUE_BALL_MIN;
}
原文地址: http://www.cveoy.top/t/topic/fECy 著作权归作者所有。请勿转载和采集!