天天看點

java抽獎_簡單實作java抽獎系統

本文為大家分享了java抽獎系統的具體代碼,供大家參考,具體内容如下

使用者資訊類

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;

}

注冊類

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;

}

}

登入類

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;

}

}

}

抽獎類

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();

}

}

以上就是本文的全部内容,希望對大家的學習有所幫助,也希望大家多多支援腳本之家。