好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

纯java代码实现抽奖系统

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

模拟一个在终端登陆注册的页面

?

1

2

3

4

5

6

7

8

9

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

36

37

38

39

40

41

42

43

44

45

public class cjtest {

  public static void main(string[] args) {

   string isgoon = "n" ; //循环的判断条件是否继续

  do {

   system.out.println( "*********幸运52********" );

   system.out.println( "1.注册" );

   system.out.println( "2.登录" );

   system.out.println( "3.幸运大抽奖" );

   system.out.println( "***********************" );

   system.out.println( "请选择菜单" );

   //接收用户选择的菜单

   scanner scanner = new scanner(system.in);

   string meunnum = scanner.nextline();

   //根据用户的选择 来执行对应功能

   meunchoose(meunnum);

   system.out.println( "是否继续---输入y/n" );

   //接收判断循环条件

   isgoon = scanner.nextline();

  } while (isgoon.equals( "y" ));

  //循环结束提示

  system.out.println( "欢迎下次使用" );

  }

  //选择对应的方法

  public static void meunchoose(string meunnum) {

  switch (meunnum) {

  case "1" :

   system.out.println( "抽奖系统----注册" );

   //调用 注册的方法

   register.register();

  case "2" :

   system.out.println( "抽奖系统----登录" );

   //调用登录的方法

   user.islogin=login.login();

   break ;

  case "3" :

   system.out.println( "抽奖系统----幸运抽奖" );

   luckdraw.lukcdraw();

   break ;

  default :

   system.out.println( "输入错误请重新输入" );

   break ;

  }

 

  }

}

不连接数据库所以模拟一个注册时用户信息所存放的位置

?

1

2

3

4

5

6

7

8

9

10

11

public class user {

  //用户名

  public static string username = "" ;

  //密码

  public static string password = "" ;

  //幸运数字

  public static int lucknumber = 0 ;

  //用户的登录状态

  public static boolean islogin = false ;

 

}

注册功能实现

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

public class register {

  public static void register() {

  system.out.println( "请注册用户的个人信息" );

  scanner scanner = new scanner(system.in);

  system.out.println( "用户名" );

  //接收用户名 放在用户信息中

  user.username = scanner.nextline();

  system.out.println( "密码" );

  //接收到用户信息中

  user.password = scanner.nextline();

  //随机一个四位的1000-2000的数 保存到用户中。

  user.lucknumber = ( int )(math.random()*( 2000 - 1000 + 1 )+ 1000 );

  //显示用户的注册信息

  system.out.println( "用户名" +user.username);

  system.out.println( "密码" +user.password);

  system.out.println( "幸运数字" +user.lucknumber);

//scanner.close();标记:注意scanner 只能关闭一次 关闭后在本程序执行中 在创建也不能接收键盘信息了

  }

 

}

登陆

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

public class login {

  static int number = 0 ; //控制循环输入密码三次

  public static boolean login() {

  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( "登陆成功" );

   //返回一个登录状态

   return true ;

  } else {

   //登录失败 有重新登录三次机会。

   number++;

   system.out.println( "你还有" +( 3 -number)+ "次机会" );

   if (number != 3 ) {

   //还有登陆的机会

   login();

  } else {

   //三次机会已用 登录失败

   system.out.println( "三次机会已用完 登录失败" );

  }

   //写返回值的时候要保证每一个分支都要有返回值

   return false ;

  }

  }

}

抽奖系统逻辑

?

1

2

3

4

5

6

7

8

9

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

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

public class luckdraw {

  //记录输入卡号注册

  static int number = 0 ;

  public static void lukcdraw() {

  //是否注册 没注册不能抽

  if (user.username.length() == 0 ) {

   //没注册 下面都不执行

   system.out.println( "你没注册" );

   return ;

  }

  //是否登录 没登录不让抽

  if (!user.islogin) {

   system.out.println( "你没登录" );

   return ;

  }

  //如果卡号没输对 也不让抽奖 直接return

  if (!islucknumber()) {

   system.out.println( "卡号不对!不能登录" );

   return ;

  }

  //真的 可以抽奖了

  //定义一个 变量保存中奖的结果

  boolean islucky = false ;

  //随机五个数 打印出结果 并判断是否匹配幸运号码

  //定义一个变量 来保存累加的字符串

  string s = "本次幸运的数" ;

  for ( int i = 0 ; i < 5 ; i++) {

   int num = ( int ) (math.random() * ( 2000 - 1000 + 1 ) + 1000 );

   //拼接要打印的字符串

   if (i< 5 ) {

   s = s + num+ "," ;

   } else {

   s = s+num;

   }

   //判断是否中奖

   if (user.lucknumber==num);

   //中奖

   islucky = true ;

  }

  //打印幸运数字

  system.out.println(s);

  if (islucky) {

   system.out.println( "你中奖了" );

  } else {

   system.out.println( "你没中奖" );

  }

  }

  public static boolean islucknumber() { //判断卡号是个输入正确

  //抽奖

   system.out.println( "请输入卡号" );

   scanner scanner = new scanner(system.in);

   int lucknumber = scanner.nextint();

   //判断用户输入的卡号是不是 这个用户之前随机出来的那个数

   if (lucknumber==user.lucknumber) {

    system.out.println( "输入正确抽奖马上运行" );

    return true ;

    //卡号相同可以抽奖

   } else {

    //卡号不相同 重新输入三次机会

    number++;

    if (number!= 3 ) {

    islucknumber();

    } else {

    system.out.println( "三次机会已用尽" );

    }

    return false ;

  }

  }

}

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

原文链接:https://blog.csdn.net/qq_36390044/article/details/79751929

查看更多关于纯java代码实现抽奖系统的详细内容...

  阅读:20次