java 练习题:一个系统的登录密码为123456, 写一个程序,让用户输入密码,如果密码不对,提示其再次输入。一共允许尝试3次。
package com.test001.gongJuLei;
import java.io.BufferedReader;
import java.io.InputStreamReader;
/**
* consoleTest 控制台
*/
public class AfConsole {
BufferedReader reader;
public AfConsole() {
// 创建一个字节和字符的转化器 InputStreamReader :字符流和字节流之间的转换中介
InputStreamReader m = new InputStreamReader(System.in); // System.in :是个字节流
reader = new BufferedReader(m); // BufferedReader :是个字符流
}
// 输出显示一个字符串
public void print(String s) {
System.out.print(s);
}
// 输出显示一个字符串(并换行)
public void println(String s) {
System.out.println(s);
}
// 从控制台读取用户输入:读取一个字符串
// 如果用户直接按了回车,则返回默认值。
public String readString(String defValue) {
try {
String s = reader.readLine();
if (s.trim().length() == 0) {
return defValue;
}
return s;
} catch (Exception e) {
return defValue;
}
}
// 从控制台读取用户输入:读取一个整数
// 如果用户直接按了回车,则返回默认值。
public int readInt(int defValue) {
try {
String s = readString(null);
return Integer.valueOf(s);
} catch (Exception e) {
return defValue;
}
}
}
package com.test001.gongJuLei;
/**
* 写一个用密码登陆的系统:需要调用控制台的类:
*
* 一个系统的登录密码为123456
* 写一个程序,让用户输入密码,如果密码不对,提示其再次输入。一共允许尝试3次。
*/
public class IntputPassWord {
public static void main(String[] args) {
AfConsole a = new AfConsole();
boolean success = false;
int tryNumber = 0;
a.println("---------------登录系统---------------");
a.println("请输入密码:");
while (tryNumber < 3 ){
String passWord = a.readString("");
if (passWord.equals("123456")){
success = true;
break;
}else {
tryNumber +=1;
a.println("输入密码错误");
a.println("请再次输入:");
}
} if (success ){
a.println("--------------欢迎---------------");
}else {
a.println("3次输入错误!退出系统");
}
}
}