java进行抽奖_简单实现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();
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
java进行抽奖_简单实现java抽奖系统相关推荐
- java 抽奖_简单实现java抽奖系统
导读热词 本文为大家分享了java抽奖系统的具体代码,供大家参考,具体内容如下 用户信息类 /* * 用户信息类 * 1.账号 * 2.密码 * 3.卡号 * 4.是否登录 */ public cla ...
- java抽奖_简单实现java抽奖系统
本文为大家分享了java抽奖系统的具体代码,供大家参考,具体内容如下 用户信息类 /* * 用户信息类 * 1.账号 * 2.密码 * 3.卡号 * 4.是否登录 */ public class Us ...
- java ssh客户端_简单的Java SSH客户端
java ssh客户端 可以使用jcabi-ssh在Java中通过几行代码通过SSH执行shell命令: String hello = new Shell.Plain(new SSH("ss ...
- java 静态块初始化_简单了解java中静态初始化块的执行顺序
这篇文章主要介绍了简单了解java中静态初始化块的执行顺序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在java中,其应该是先于所有的方法执行. ...
- java mapreduce程序_简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行...
[TOC] 简单的java Hadoop MapReduce程序(计算平均成绩)从打包到提交及运行 程序源码 import java.io.IOException; import java.util. ...
- java event事件_简单的Java Event-事件框架
自己写的一个简单的Java事件框架.目前具备以下功能: 1.通过继承Event类,用户可自定义事件. 2.通过EventService 的fireEvent(Event e) 发出一个事件. 3.通过 ...
- java ear包_简单介绍Java 的JAR包、EAR包、WAR包区别
原标题:简单介绍Java 的JAR包.EAR包.WAR包区别 WAR包 WAR(Web Archive file)网络应用程序文件,是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件.War专 ...
- java for 死循环_简单的java死循环 java中的死循环问题
java中死循环是什么意思 循环一次不再循环是死循环java中死循环是什么意思 循环一次不再循环是死循环 还是不断循环才是死JAVA中死循环的意思是,不停地循环,不会终止,例如: for (int i ...
- Java权限降级_简单值控制权限系统的改进
需求变更--使权限控制值能动态调整 上一讲中简单权限系统的权限控制值是写在XML配置文件中的,如果需要调整这些值还需要修改配置文件,对于Web系统来说,此后还需要重新打包,测试和发布.这样无法实现动态 ...
最新文章
- Oracle监听配置
- (NFS)mount.nfs: access denied by server while mounting localhost:/home/xuwq/minilinux/system
- 阿里云 EMAS HTTPDNS 联合函数计算重磅推出 SDNS 服务,三大能力获得突破
- mysql 定期删除表中无用数据
- a - 数据结构实验之串一:kmp简单应用_数据结构(C语言版)_笔记_3
- x86汇编语言复习笔记
- go语言 liteIDE 错误: 进程无法启动.
- FFmpeg[14] - ffbuild/common.mak:173: *** missing separator. Stop.
- 轻松了解,顶级域名,二级域名,三级域名
- WinNTSetup安装Windows10 wim格式文件的使用教程
- Android中Gson使用,flutter调用原生sdk
- 批量修改UWP版bilibili下载的视频文件名
- BZOJ5287 HNOI2018毒瘤
- keil编译后报错Error:L6218E的解决方法
- SV绿皮书笔记(四)
- POJ3278抓牛Catch That Cow
- java 生成word目录_java代码生成word目录
- neo4j配置远程连接
- 如何查看本机Mac地址
- Android中添加驱动的方法