问题解析
在 C 语言中对比两字符串只需要 == 就可以,但在 java 中需要使用 equals 函数来处理。该函数使用方法为:
String A = "1234567";
String B = "1357911";
if (A.equals(B)){
System.out.println("相同");
}
else {
System.out.println("不同");
}
解题思路
创建字符串 input 记录输入字符串,并与设定好的密码 password 作比较,最多三次机会,如果输入正确就 break 出循环,输入错误就使 retrytime-- ,若三次输入都失败,就在循环外判断,如果 retrytime = 0,则输入次数用完,退出程序。
实现代码
public static void main(String[] args) {
String password = "123456";
Scanner scanner = new Scanner(System.in);
System.out.println("请输入密码:");
int retrytime = 3;
//3次
for (int i = 0; i < 3; i++) {
String input = scanner.nextLine();
if (input.equals(password)) {
System.out.println("输入正确!");
break;
}
else {
retrytime--;
System.out.println("输入错误,请重新输入,还有" + retrytime + "次机会");
}
}
//输入错误三次
if (retrytime == 0) {
System.out.println("输入次数用完,退出程序");
}
}