Java简易抽奖系统小项目

 更新时间:2021年09月17日 11:04:49   作者:Caczhtus  
这篇文章主要为大家详细介绍了Java简易抽奖系统小项目,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

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

需求:

实现一个抽奖系统

1 注册

2 登录

3 抽奖 

必须先注册  再登陆  再抽奖

随机产生4个随机数作为幸运卡号 

用户注册后 登录的时候  用户名密码输入判断只有三次机会

需要做到  还有2次   还有1次  三次输入错误 不能再登录 

产生10个随机数  将用户注册得到的随机数作为判断

代码如下:

import java.util.*;
 
public class Homeworktest {
 
 public static void main(String[] args) {
 Scanner cin=new Scanner(System.in);
 Random rand=new Random();
 int num,i,Key,j,before=0,count,len=0,L=0;
 int[] data=new int[10];
 String[][] book=new String[10][2]; //存储用户注册信息
 String ID,Temp;
 System.out.println("**********");
 System.out.println("0 退出\n1 注册\n2 登陆\n3 抽奖");
 System.out.println("**********");
 while(true){
 System.out.println("请输入Key:");
 Key=cin.nextInt();
 cin.nextLine();
 if(Key == 0){
 System.out.println("抽奖系统已退出,欢迎您再次使用!");
 break;
 }
 else if(Key == 1){
 before=0;
 System.out.println("请输入您要建立的账号:");
 ID=cin.nextLine();
 i=len++;
 book[i][0]=ID;
 while(true){
 System.out.println("请设置您的密码:");
 ID=cin.nextLine();
 book[i][1]=ID;
 System.out.println("请确认您的密码:");
 for(j=3;j>0;j--){
 ID=cin.nextLine();
 if(book[i][1].equals(ID)){
 System.out.println("恭喜您注册成功!");
 System.out.println("您的账号是:"+book[i][0]+"\n您的密码是:"
 +book[i][1]+"\n请妥善保管!");
 break;
 }
 else if(j>1)
 System.out.println("对不起,两次输入密码不符,您还有"
 +(j-1)+"次机会!请重新输入:");
 else
 System.out.println("该密码已重置!");
 }
 if(j!=0) break;
 }
 }
 else if(Key == 2){
 before=0;
 for(i=3;i>0;i--){
 System.out.println("请输入您的账号:");
 ID=cin.nextLine();
 System.out.println("请输入您的密码:");
 Temp=cin.nextLine();
 for (j = 0; j < len; j++) {
 if(ID.equals(book[j][0]) && Temp.equals(book[j][1]))
 break;
 }
 if(j==book.length){
 if(i>1)
 System.out.println("对不起,登陆失败!你还有"+(i-1)+"次机会.");
 else{
 num=0;
 for (int k = 0; k < book.length-1; k++) {
 if(num == 0 && ID.equals(book[k][0])) num=1;
 if(num == 1){
 book[k][0]=book[k+1][0];
 book[k][1]=book[k+1][1];
 }
 }
 System.out.println("账号:"+ID+"已被冻结,不能继续使用!");
 }
 }
 else{
 System.out.println("恭喜您登陆成功!");
 before=1;
 L=j;
 break;
 }
 }
 }
 else if(Key == 3){
 if(before == 1){
 for(i=0;i<data.length;i++)
 data[i]=rand.nextInt(9)+1;
 System.out.println("您的号码分别是:");
 for(i=count=0;i<4;i++){
 num=rand.nextInt(9)+1;
 System.out.print(num+" ");
 for(j=0;j<data.length;j++)
 if(data[j] == num)
 {
 count++;
 break; //可能有多个相同
 }
 }
 System.out.println("");
 System.out.println(book[L][0]+":");
 switch(count){
 case 4:System.out.println("恭喜您中特等奖!");break;
 case 3:System.out.println("恭喜您中一等奖!");break;
 case 2:System.out.println("恭喜您中二等奖!");break;
 case 1:System.out.println("恭喜您中三等奖!");break;
 default:System.out.println("很遗憾,您未中奖!");break;
 }
 }
 else
 System.out.println("对不起,您尚未登陆账号,不能参与抽奖活动!");
 }
 }
 }
}

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

相关文章

  • Spring Cloud升级最新Finchley版本的所有坑

    Spring Cloud升级最新Finchley版本的所有坑

    这篇文章主要介绍了Spring Cloud升级最新Finchley版本的所有坑,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Java零基础入门数组

    Java零基础入门数组

    数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。Java 语言中提供的数组是用来存储固定大小的同类型元素
    2022-04-04
  • logback的AsyncAppender高效日志处理方式源码解析

    logback的AsyncAppender高效日志处理方式源码解析

    这篇文章主要为大家介绍了logback的AsyncAppender高效日志处理方式源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • 在编码时如何使用\r与\n,两者的区别

    在编码时如何使用\r与\n,两者的区别

    本篇文章是对\r与\n两者的区别,以及编程语言中如何使用进行了详细的分析介绍,需要的朋友可以参考下
    2015-07-07
  • java实现Yaml转Json示例详解

    java实现Yaml转Json示例详解

    这篇文章主要为大家介绍了java实现Yaml转Json示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-02-02
  • Java中数组越界异常的优雅解决方式

    Java中数组越界异常的优雅解决方式

    ‌数组越界报错通常发生在尝试访问数组中不存在的索引时,这可能导致程序崩溃或异常,这篇文章主要给大家介绍了关于Java中数组越界异常的优雅解决方式,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-07-07
  • SpringBoot上传图片与视频不显示问题的解决方案

    SpringBoot上传图片与视频不显示问题的解决方案

    这篇文章主要介绍了关于springboot上传图片与视频不显示问题,最近做毕设时候需要上传视频的图片与视频,但是每次都需要重启前端才能展示出此图片,所以本文给大家介绍了SpringBoot上传图片与视频不显示问题的解决方案,需要的朋友可以参考下
    2024-03-03
  • Java 实现判定顺序表中是否包含某个元素(思路详解)

    Java 实现判定顺序表中是否包含某个元素(思路详解)

    这篇文章主要介绍了Java 实现判定顺序表中是否包含某个元素,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • 浅析Java8 中 Map 接口的新方法

    浅析Java8 中 Map 接口的新方法

    这篇文章主要介绍了Java8 中 Map 接口的新方法,本文通过代码实例给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-10-10
  • 6种Java创建对象的方式总结

    6种Java创建对象的方式总结

    在Java中,创建对象可以使用多种方式,本文将详细介绍以下六种创建对象的方式,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起了解一下
    2023-04-04

最新评论