本文為大家分享了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(); } }以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。