Java双色球系统开发详解

 更新时间:2021年09月24日 11:13:02   作者:烟火9092  
这篇文章主要为大家详细介绍了Java双色球系统的开发,超级简单的逻辑,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

功能说明

1.1. 菜单页功能

package lotteryDemo1;
import java.util.Scanner;
public class Menu {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        o:while(true){
            System.out.println("欢迎使用双色球系统,官方网站www.zhongbuliao.com");
            System.out.println("********请输入菜单选项*********");
            System.out.println("*        1:购买双色球         *");
            System.out.println("*        2:查看开奖           *");
            System.out.println("*        3:查看中奖           *");
            System.out.println("*        4:退出系统           *");
            System.out.println("******************************");
            System.out.println("请输入选项");
            int option =sc.nextInt();
            switch (option){
                case 1:
                    System.out.println("运行购买双色球代码");
                    break;
                case 2:
                    System.out.println("运行查看开奖代码");
                    break;
                case 3:
                    System.out.println("运行查看中奖代码");
                    break;
                case 4:
                    System.out.println("客官常来呀!");
                    break o;
                default:
                    System.out.println("客官不可以");
            }
        }
    }
}
 

1.2. 购买双色球

1.3. 查看开奖

准备彩票工具类

存放一个生成 彩票的方法

package lotteryDemo1;
import java.util.Arrays;
public class LotteryUtil {
    public static int[] getLottery(){
        int[] lottery=new int[6];
        for (int i = 0; i <6 ; i++) {
            int num =(int)(Math.random()*33+1);
            while(isContain(lottery,num)){
                num =(int)(Math.random()*33+1);
            }
            lottery[i]=num;
        }
        Arrays.sort(lottery);
        int[] lottery2=new int[7];
        System.arraycopy(lottery,0,lottery2,0,6);
        lottery2[6]=(int)(Math.random()*16+1);
        return lottery2;
    }
    public static boolean isContain(int[] arr,int b){
        boolean flag= false;
        for (int x:arr){
            if(x==b){
                flag=true;
                break;
            }
        }
        return  flag;
    }
}
 

在 menu类中添加代码

package lotteryDemo1;
import java.util.Arrays;
import java.util.Scanner;
public class Menu {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        // 声明一个二维数组 用于存储多个注彩票
        int[][] lotteries=new int[0][];
        int[] luckyNum=new int[0];
        o:while(true){
            System.out.println("欢迎使用双色球系统,官方网站www.zhongbuliao.com");
            System.out.println("********请输入菜单选项*********");
            System.out.println("*        1:购买双色球         *");
            System.out.println("*        2:查看我的双色球     *");
            System.out.println("*        3:查看开奖           *");
            System.out.println("*        4:查看中奖           *");
            System.out.println("*        5:退出系统           *");
            System.out.println("******************************");
            System.out.println("请输入选项");
            int option =sc.nextInt();
            switch (option){
                case 1:
                    System.out.println("运行购买双色球代码");
                    //输入够买的注数
                    System.out.println("请输入购买注数");
                    int zs=sc.nextInt();
                    // 创建一个二维数组 用于存储多个彩票
                    lotteries =new int[zs][];
                    //由程序循环生成彩票
                    for (int i = 0; i <zs ; i++) {
                        lotteries[i] = LotteryUtil.getLottery();
                    }
                    // 提示购买成功
                    System.out.println("购买成功");
                    break;
                case 2:
                    // 购买双色球
                    if(lotteries.length!=0){
                        /*遍历双色球二维数组*/
                        for (int[] lottery:lotteries) {
                            for (int x=0;x<lottery.length;x++) {
                                if(x==5){
                                    System.out.print(lottery[x]+"\t|\t");
                                }else{
                                    System.out.print(lottery[x]+"\t");
                                }
                            }
                            System.out.println();
                        }
                    }else{
                        System.out.println("客官请先花钱购买,然后再查看双色球");
                    }
                    break;
                case 3:
                    // 判断是否购买了双色球
                    // 再生成一注双色球,当成中奖号码即可
                    if(lotteries.length!=0){
                        // 生成中间号码
                        luckyNum=LotteryUtil.getLottery();
                        // 输出中奖号码
                        for (int x=0;x<luckyNum.length;x++) {
                            if(x==5){
                                System.out.print(luckyNum[x]+"\t|\t");
                            }else{
                                System.out.print(luckyNum[x]+"\t");
                            }
                        }
                        System.out.println();
                    }else{
                        System.out.println("客官请先花钱购买,然后再查看开奖号码");
                    }
                    break;
                case 4:
                    System.out.println("查看中奖!");
                    break;
                case 5:
                    System.out.println("客官再来呀!");
                    break o;
                default:
                    System.out.println("客官不可以");
            }
        }
    }
}
 

1.4. 查看中奖

在LotteryUtil中定义一个判断中奖的方法

public static int isWin(int[] luckyNum,int[] lottery){
    // 判断前六位有几位相同
    int red=0;
    for (int i = 0; i <6 ; i++) {
        System.out.print(lottery[i]+"\t");
        if(luckyNum[i]==lottery[i]){
            red++;
        }
    }
    int blue=luckyNum[6]==lottery[6]?1:0;
    System.out.print("\t|\t"+lottery[6]+"\t");
    int money=0;
    if(red==6&&blue==1){
        money=5000000;
        System.out.println("一等奖5000000元");
    }else if(red==6){
        money=1250000;
        System.out.println("二等奖1250000元");
    }else if(red==5&&blue==1){
        money=3000;
        System.out.println("三等奖3000元");
    }else if(red==5||red+blue==5){
        money=200;
        System.out.println("四等奖200元");
    }else if(red==4||red+blue==4){
        money=10;
        System.out.println("五等奖10元");
    } else if(red==0&&blue==1){
        money=5;
        System.out.println("六等奖5元");
    }else{
        System.out.println("未中奖0元");
    }
    return money;
}
 

在menu中添加查看中奖功能

1.5. 退出系统

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • Java精品项目瑞吉外卖之后端登录功能篇

    Java精品项目瑞吉外卖之后端登录功能篇

    这篇文章主要为大家详细介绍了java精品项目-瑞吉外卖订餐系统,此项目过大,分为多章独立讲解,本篇内容为后端登录功能的实现,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • eclipse自动创建SpringBoot项目报错的解决

    eclipse自动创建SpringBoot项目报错的解决

    这篇文章主要介绍了eclipse自动创建SpringBoot项目报错的解决方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-01-01
  • springboot ehcache 配置使用方法代码详解

    springboot ehcache 配置使用方法代码详解

    EhCache是一个比较成熟的Java缓存框架,Springboot对ehcache的使用非常支持,所以在Springboot中只需做些配置就可使用,且使用方式也简易,今天给大家分享springboot ehcache 配置使用教程,一起看看吧
    2021-06-06
  • Java实现桌面日历

    Java实现桌面日历

    这篇文章主要为大家详细介绍了Java实现桌面日历,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-06-06
  • spring中@Reference注入为空的解决方法

    spring中@Reference注入为空的解决方法

    今天上线遇到了问题,所以抽空记录一下,本文主要介绍了spring中@Reference注入为空的解决方法,需要的朋友们下面随着小编来一起学习学习吧
    2021-06-06
  • java微信延迟支付的实现示例

    java微信延迟支付的实现示例

    最近在面试的过程中总会出现一些关于微信支付延迟返回结果的处理方式的问题,本文主要介绍了java微信延迟支付的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • RestTemplate使用之如何设置请求头、请求体

    RestTemplate使用之如何设置请求头、请求体

    这篇文章主要介绍了RestTemplate使用之如何设置请求头、请求体问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-07-07
  • Linux下Java开发环境搭建以及第一个HelloWorld

    Linux下Java开发环境搭建以及第一个HelloWorld

    这篇文章主要介绍了Linux下Java开发环境搭建以及第一个HelloWorld的实现过程,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-09-09
  • JAVAlogback日志管理详解

    JAVAlogback日志管理详解

    本篇文章主要介绍了在SpringBoot中使用Logback管理记录日志,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2021-09-09
  • Spring Bean配置方式总结

    Spring Bean配置方式总结

    定义Spring Bcan的3种方式分别是:基于XML 的方式配置、基于注解扫播方式配置、基于元数据类的配置,本文就通过代码示例给大家详细讲讲这三种配置方式,需要的朋友可以参考下
    2023-12-12

最新评论