import java.util.ArrayList;/nimport java.util.Collections;/nimport java.util.Iterator;/nimport java.util.List;/nimport java.util.Scanner;/n/npublic class DoubleColorBallGenerator {/n/n public static void main(String[] args) {/n int redNum = 6; // 红球个数/n int redMin = 1; // 红球最小值/n int redMax = 33; // 红球最大值/n int blueMin = 1; // 蓝球最小值/n int blueMax = 16; // 蓝球最大值/n/n List redList = generateNumList(redNum, redMin, redMax); // 生成红球号码列表/n Collections.sort(redList); // 对红球号码列表进行排序/n printNumList(redList, '红球'); // 输出红球号码列表/n/n int blueNum = 1; // 蓝球个数/n List blueList = generateNumList(blueNum, blueMin, blueMax); // 生成蓝球号码列表/n printNumList(blueList, '蓝球'); // 输出蓝球号码列表/n/n Scanner scanner = new Scanner(System.in);/n System.out.print('请输入购买的双色球注数:');/n int count = scanner.nextInt(); // 获取购买注数/n for (int i = 1; i <= count; i++) {/n List redListCopy = new ArrayList<>(redList); // 复制一份红球列表,用于随机取数/n List ballList = new ArrayList<>(); // 创建一个空列表,用于存放一组双色球号码/n for (int j = 0; j < redNum; j++) {/n int index = (int) (Math.random() * redListCopy.size()); // 随机生成一个索引/n int num = redListCopy.remove(index); // 从红球列表中取出号码,并移除该号码,避免重复/n ballList.add(num); // 将号码加入到双色球号码列表中/n }/n Collections.sort(ballList); // 对双色球号码列表进行排序/n ballList.add(blueList.get(0)); // 将蓝球号码加入到双色球号码列表中/n printNumList(ballList, '第' + i + '注'); // 输出该组双色球号码/n }/n scanner.close();/n }/n/n //n * 生成指定范围内的随机整数列表,列表中不包含重复的数/n * @param count 生成的数的个数/n * @param minNum 最小值/n * @param maxNum 最大值/n * @return 生成的随机整数列表/n *//n public static List generateNumList(int count, int minNum, int maxNum) {/n List numList = new ArrayList<>();/n for (int i = minNum; i <= maxNum; i++) {/n numList.add(i);/n }/n List resultList = new ArrayList<>();/n for (int i = 0; i < count; i++) {/n int index = (int) (Math.random() * numList.size()); // 随机生成一个索引/n int num = numList.remove(index); // 从列表中取出号码,并移除该号码,避免重复/n resultList.add(num); // 将号码加入到结果列表中/n }/n return resultList;/n }/n/n //n * 输出整数列表/n * @param numList 整数列表/n * @param label 列表标签/n *//n public static void printNumList(List numList, String label) {/n System.out.print(label + ':');/n Iterator iterator = numList.iterator();/n while (iterator.hasNext()) {/n int num = iterator.next();/n System.out.print(num + ' ');/n }/n System.out.println();/n }/

Java 双色球号码生成器 - 在线模拟随机选号

原文地址: https://www.cveoy.top/t/topic/okyo 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录