重点内容: java里如何判断字符串的相等,了解final的作用
import java.util.Scanner;
/**
*
*使用循环实现三次密码输入错误退出系统
* @author Monster丶ZF
* @version1.8
* @data 2019年4月3日
* @remakeTODO
*/
public class PasswordDemo {
public static void main(String[] args) {
final String PASSWORD = "123456"; //用final定义一个字符串常量
Scanner input = new Scanner(System.in);
String password = null; //密码初值为null
//System.out.println(password.length()); //输出字符串的长度
//String userName = ""; //c NULL c++ nullptr
//System.out.println(userName.length() );
//1.写出循环结构
int i=0;
while(i<3){
System.out.print("请输入密码:");
password = input.next();
i++;
//java中字符串不允许这样判断:if(password == "123456"){
if(!PASSWORD.equals(password)){ //判断字符串相等的固定方式!!
System.out.println("密码输入错误,请重新输入!(剩余"+(3-i)+"次)");
if(i == 3){
System.out.println("密码输入错误已达到三次,强制退出系统!");
System.exit(0); //正常退出java程序
}
}else{ //输入密码相等的情况
//想办法退出这个循环结构
//i=9;//如何改进
//i = Integer.MAX_VALUE; //让i的值为类型里的最大值
break;
}
}
System.out.println("密码正确,成功登陆本系统!");
//2.考虑循环的次数
//3.输入并验证用户名和密码
input.close();
}
}