美文网首页
[小练习] 随机号码生成器

[小练习] 随机号码生成器

作者: 大写K | 来源:发表于2019-10-18 11:10 被阅读0次
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Scanner;

public class Test {
    public static void main(String[] args) {
        Lottery lottery = new Lottery();
        Scanner sc = new Scanner(System.in);
        System.out.println("Please input the number of lottery group(s) that you want to generate : ");
        String groupNum = sc.nextLine();
        try {
            lottery.generateLottery(groupNum);
        } catch (NumberFormatException e) {
            System.out.println("Error: Illegal Argument!");
        }
        
    }
}


class Lottery {
   public void generateLottery(String groupNum) {
        int groupNumber = 0;
        groupNumber = Integer.parseInt(groupNum);
        StringBuilder sbuilder = new StringBuilder();
        for (int i=0; i<groupNumber; i++) {
            List<String> startList = getHeadNumber();
            List<String> endList = getRearNumber();
            for (int m=0; m<startList.size(); m++) {
                sbuilder.append(startList.get(m));
            }
            sbuilder.append("    ");
            for (int m=0; m<endList.size(); m++) {
                sbuilder.append(endList.get(m));
            }
            sbuilder.append("\n");
        }
        System.out.println(sbuilder);
    }
    
    public List<String> getHeadNumber() {
        // 创建彩票的前半段可选号码集合
        List<String> list = new ArrayList<String>();
        String lotteryNumber = "";
        // 从 1 到 35 中随机选取一个数作为号码
        for (int i=1; i<36; i++) {
            if (i < 10) {
                list.add("0" + i + " ");
            } else {
                list.add("" + i + " ");
            }
        }       
        int roundIndex = 0;
        List<String> lotteryList = new ArrayList<String>();
        for (int j=0; j<5; j++) {
            int amount = list.size();
            Random r = new Random();
            roundIndex = r.nextInt(amount);
            lotteryNumber = list.get(roundIndex);
            lotteryList.add(lotteryNumber);
            // list.remove(roundIndex);
        }       
        return lotteryList;
    }
    
    public List<String> getRearNumber() {
        // 创建彩票的后半段可选号码集合
        List<String> list = new ArrayList<String>();
        String lotteryNumber = "";
        // 从 1 到 12 中随机选取一个数作为号码
        for (int i=1; i<13; i++) {
            if (i < 10) {
                list.add("0" + i + " ");
            } else {
                list.add("" + i + " ");
            }
        }
        int roundIndex = 0;
        List<String> lotteryList = new ArrayList<String>();
        for (int j=0; j<2; j++) {
            int amount = list.size();
            Random r = new Random();
            roundIndex = r.nextInt(amount);
            lotteryNumber = list.get(roundIndex);
            lotteryList.add(lotteryNumber);
        }
        return lotteryList;
    }  
}

相关文章

网友评论

      本文标题:[小练习] 随机号码生成器

      本文链接:https://www.haomeiwen.com/subject/aakimctx.html