for迴圈例子2
阿新 • • 發佈:2022-02-24
/**
* for迴圈例子2
* @date: 2022.2.24
* 使用者登入驗證,上限3次。
* */
程式碼
點選檢視【ForTest2.java】程式碼
package com.d; import java.util.Scanner; /** * for迴圈例子2 * @date: 2022.2.24 * 使用者登入驗證,上限3次。 * */ public class ForTest2 { public static void main(String[] args) { // 舉例使用者資訊 String username = "admin";//使用者名稱 String pad = "123";//密碼 int sum = 3; //限定3次賬戶密碼試錯的機會,sum--; sum < 1; break; // 模擬使用者登入 Scanner input = new Scanner(System.in); // 驗證使用者名稱 System.out.print("歡迎使用Windows系統,請輸入使用者名稱:"); for (;;){ //死迴圈的另一種寫法 if (sum < 1) break;// 及時檢查試錯次數,並終止迴圈 String putuser = input.next(); if (username.equals(putuser)){ // 使用者名稱對了,才有許可權驗證密碼 System.out.print("請輸入密碼:"); for (;;){ if (sum < 1) break;// 及時檢查試錯次數,並終止迴圈 String putpad = input.next(); if (pad.equals(putpad)){ System.out.println("使用者:【"+ putuser +"】登入成功!"); break;//登入成功!跳出死迴圈 }else { sum--;//試錯計數 if (sum!=0) System.out.print("密碼不對!只剩【"+ sum +"】次機會了,請重新輸入:"); if (sum == 0) System.out.println("您無權訪問,請稍後再試!"); continue;//密碼不對,進入下一迴圈 } } }else { sum--;//試錯計數 if (sum!=0) System.out.print("沒有該使用者,只剩【"+ sum +"】次機會了,請重新輸入:"); if (sum == 0) System.out.println("您無權訪問,請稍後再試!"); continue;//使用者名稱不對,進入下一迴圈 } // 如果一切順利,輸入使用者名稱密碼後程序會執行到這裡,還得手動跳出死迴圈 break; } } }
執行
String username = "admin";//使用者名稱
String pad = "123";//密碼
歡迎使用Windows系統,請輸入使用者名稱:zhangsan
沒有該使用者,只剩【2】次機會了,請重新輸入:admin
請輸入密碼:666
密碼不對!只剩【1】次機會了,請重新輸入:123
使用者:【admin】登入成功!
歡迎使用Windows系統,請輸入使用者名稱:lisi
沒有該使用者,只剩【2】次機會了,請重新輸入:admin
請輸入密碼:888
密碼不對!只剩【1】次機會了,請重新輸入:999
您無權訪問,請稍後再試!