本文實例為大家分享了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