推扬网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
推扬网 门户 经验分享 查看内容

简单实现java抽奖系统

2020-4-11 13:38| 发布者: admin| 查看: 543| 评论: 0

这篇文章主要教大家如何简单实现java抽奖系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文为大家分享了java抽奖系统的具体代码,供大家参考,具体内容如下

用户信息类

/*
 * 用户信息类
 * 1.账号
 * 2.密码
 * 3.卡号
 * 4.是否登录
 */

 public class User {
  public static String userName = "";
  public static String passWord = "";
  public static int cardNumber = 0;
  // 是否登录
  public static boolean isLogin = false;
  // 是否注册
  public static boolean isRegister = false;
 }

注册类

/*
 * 注册类
 * 1.输入账号 密码
 * 2.产生随机号 [1000,2000]
 * 3.保存用户注册信息
 * 4.提示注册成功
 */

 public class Register {
  // 注册方法
  public static void userRegister() {
   System.out.println("请输入用户名:");
   Scanner scanner = new Scanner(System.in);
   // 接收用户信息
   String userName = scanner.nextLine();
   System.out.println("请输入密码:");
   String passWord = scanner.nextLine();
   int num = (int)(Math.random() * 1001 + 1000);
   // 保存到用户类中
   User.userName = userName;
   User.passWord = passWord;
   User.cardNumber = num;
   // 打印注册信息
   System.out.println();
   System.out.println("注册成功,请记好你的会员卡号");
   System.out.println("用户名:" + userName);
   System.out.println("密码:" + passWord);
   System.out.println("卡号:" + num);

   // 保存注册状态
   User.isRegister = true;
  }
 }

登录类

/*
 * 登录类
 * 1.输入登录的账号和密码
 * 2.和用户信息 进行匹配
 * 有三次重新输入的机会
 * 3.登录成功
 */

 public class Login {
  // 保存登录失败的次数
  static int num = 0;
  // 登录方法
  // 静态方法里面 需要使用静态的成员变量
  public static boolean userLogin() {
   // 先判断是否注册
   if (User.isRegister == false) {
    System.out.println("请先注册");
    Register.userRegister();
    // 登录失败
    return false;
   }
   // 输入信息
   System.out.println("用户名:");
   Scanner scanner = new Scanner(System.in);
   // 接收信息
   String userName = scanner.nextLine();
   System.out.println("密码:");
   String passWord = scanner.nextLine();
   // 判断匹配登录信息
   if(userName.equals(User.userName) && passWord.equals(User.passWord)) {
    // 登录成功
    System.out.println("欢迎您" + userName);
    // 返回登录结果
    return true;
   } else {
    // 登录失败
    num++;
    // 提示用户还剩几次机会
    System.out.println("用户名或密码有误,请重新输入!" + "还剩" + (3 - num) + "次");
    // 判断登录错了几次
    if (num != 3) {
     // 继续登录
     userLogin();
    } else {
     // 登录失败
     System.out.println("对不起三次机会用完,请明日再来!");
     // 重置记录登录次数的变量
     num = 0;   
    }
    // 如果代码走到这里 一定是登录失败
    return false;
   }
  }
 }

抽奖类

/*
 * 抽奖类
 * 1.判断是否登录
 * 2.输入抽奖卡号
 * 有三次输入卡号的机会 
 * 3.判断是否中奖
 */

 public class CJ {
  // 保存输入卡号的次数
  static int cardNumber = 0;
  // 抽奖方法
  public static void userCJ() {
   // 判断登录状态
   if (!User.isLogin) {
    // 没登录 直接结束方法
    System.out.println("请先登录");
    return;
   }
   // 判断是否输入正确
   if(!isCarNum()) {
    System.out.println("你输入的不正确");
    return;
   }

   // 匹配账号
   // 保存是否中奖的变量
   boolean isCJ = false;
   // 随机五个数并且拼接成字符串打印逗号隔开
   String string = "本日幸运数字:";
   for (int i = 0; i < 5; i++) {
    // 随机
    int num = (int)(Math.random() * 1001 + 1000);
    // 拼接
    if (i < 4) {
     string = string + num + ",";
    } else {
     string = string + num;
    }
    // 查看是否中奖
    if (num == User.cardNumber) {
     isCJ = true;
    }
   }
   // 打印中奖号
   System.out.println(string);
   // 判断是否中奖
   if(isCJ) {
    System.out.println("中奖");
   } else {
    System.out.println("没中奖");
   }
  }

  // 输入卡号方法
  public static boolean isCarNum() {
   System.out.println("请输入卡号:");
   Scanner scanner = new Scanner(System.in);
   // 接收
   String carNum = scanner.nextLine();
   // 转int
   int num = Integer.parseInt(carNum);
   // 进行比对
   if (User.cardNumber == num) {
    // 匹配正确
    System.out.println("卡号输入正确");
    return true;
   } else {
    //匹配不正确
    cardNumber++;
    System.out.println("输入还剩" + (3 - cardNumber) + "次");
    if (cardNumber != 3) {
     isCarNum();
    } else {
     System.out.println("3次机会用完");
     // 输入卡号次数重置
     cardNumber = 0;
    }
    return false;
   }
  }
 }

抽奖抽奖类(组装抽奖逻辑)

/*
 * 抽奖开始类(组装抽奖逻辑)
 * 
 */

 public class CJStart {
  // 抽奖开始
  public void cjStart() {
   // 是否继续主菜单
   String isGoOn = "";
   // 循环主菜单
   do {
    System.out.println("*****欢迎进入抽奖系统*****");
    System.out.println("  1.注册");
    System.out.println("  2.登录");
    System.out.println("  3.抽奖");
    System.out.println("************************");
    Scanner scanner = new Scanner(System.in);
    // 接收菜单选项
    String menuNum = scanner.nextLine();
    // 判断选项
    chooseMenuNum(menuNum);
    // 接收是否继续
    System.out.println("是否继续选择? y/n");
    isGoOn = scanner.nextLine();
   } while (isGoOn.equals("y"));
  }

  // 判断菜单选项
  public void chooseMenuNum(String menuNum) {
   switch (menuNum) {
   case "1":
    System.out.println("[蓝欧抽奖系统 > 注册]");
    System.out.println("请填写个人注册信息:");
    // 调用注册方法
    Register.userRegister();
    break;
   case "2":
    System.out.println("[蓝欧抽奖系统 > 登录]");
    // 调用登录方法 保存登录状态
    boolean userLogin = Login.userLogin();
    User.isLogin = userLogin;
    break;
   case "3":
    System.out.println("[蓝欧抽奖系统 > 抽奖]");
    // 调用抽奖方法
    CJ.userCJ();
    break;
   default:
    System.out.println("输入错误,请重新选择");
    break;
   }
  }
 }

测试类

/*
 * 测试类
 */

 public class CJTest {
  public static void main(String[] args) {
   CJStart cjStart = new CJStart();
   cjStart.cjStart();
  }
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持


鲜花

握手

雷人

路过

鸡蛋

最新评论

精选推荐

    广告服务|投稿要求|禁言标准|版权说明|免责声明|手机版|小黑屋|推扬网 ( 粤ICP备18134897号 )|网站地图 | 邮箱:vayae@hotmail.com

    GMT+8, 2024-3-29 06:21 , Processed in 0.343785 second(s), 28 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    返回顶部