java生成大乐透中奖号码

这段时间吃完饭都会来一两注大乐透!

然后心血来潮的用java写了个简单的随机生成大乐透号码

先晒代码:

public class RandomUtil {
    //前区1-35个号码
    private static String[] ticket1={
            "01","02","03","04","05","06","07","08", "09","10","11","12",
            "13","14","15","16","17","18","19","20","21", "22","23","24",
            "25","26","27","28","29","30","31","32","33","34","35"};
    //后区1-12个号码
    private static String[] ticket2={"01","02","03","04","05","06","07","08", "09","10","11","12",};
    //抽奖模块
    public static String getTicket(){
        StringBuilder builder=new StringBuilder();
        TreeSet set=new TreeSet<>();
        //让容器装满不同索引5个
        while (set.size()<5){
            set.add(getIndex(35));
        }
        TreeSet set1=new TreeSet<>();
        //让容器装满不同索引2个
        while (set1.size()<2){
            set1.add(getIndex(12));
        }
        for (Integer integer : set) {
            builder.append(ticket1[integer]);
            builder.append(" ");
        }
        for(Integer integer:set1){
            builder.append(ticket2[integer]);
            builder.append(" ");
        }
        // 
        String result=StringUtils.trimWhitespace(builder.toString());
        return result;
    }
    /**
     * 根据指定空间获取随机数(如n=35则随机数位0~34刚好标识35个号的索引)
     */
    public static int getIndex(int n){
        return (int)(Math.random()*n);
    }
    public static void main(String[] args) {
        String ticket = getTicket();
        System.out.println("此次大乐透号:"+ticket);
    }
}

上述就是代码部分,本次只是为了娱乐,所以没有写scanner扫描交互,都很简单就是图个娱乐,如果觉得有必要完善的小伙伴可以留言,我可以写一些交互,使程序更人性化!

初学者可以研究下上述代码部分,为什么我要用TreeSet装号码索引(两点个优点哦)

最后打成jar包

java生成大乐透中奖号码_第1张图片

 

 

你可能感兴趣的:(java生成大乐透中奖号码)