1、编写程序,完成分包版本的登录注册案例
ublic class demo {
public static void main(String[] args) {
System.out.println(“欢迎使用本系统”);
UserDao userDao = new UserDaoImpl();
while (true) {
Scanner sc = new Scanner(System.in);
System.out.println(“请选择 1.注册 2.登录 3.退出”);
int num = ScannerUtils.getNumber(new Scanner(System.in));
switch (num) {
case 1:
String username=null;
while (true){
System.out.println(“请输入用户名 6–16位字母”);
sc = new Scanner(System.in);
username = sc.nextLine().trim();
boolean b = CheckData.checkUsername(username);
if(b){
break;
}else{
System.out.println(“用户名格式不对,请重新输入”);
}
}
String password=null;
while (true){
System.out.println(“请输入密码”);
password= sc.nextLine().trim();
boolean b = CheckData.checkPasswrod(password);
if (b) {
break;
} else {
System.out.println(“用户名格式不对,请重新输入”);
}
}
User user = new User(username, password);
userDao.registerUser(user);
break;
case 2:
for (int i = 1; i <= 3; i++) {
System.out.println(“请输入用户名”);
sc = new Scanner(System.in);
String username2 = sc.nextLine().trim();
System.out.println(“请输入密码”);
String password2 = sc.nextLine().trim();
boolean flag = userDao.isLogin(username2, password2);
if (flag) {
System.out.println(“登录成功,要玩游戏吗y/n?”);
} else {
if((3 - i)>0){
System.out.println(“用户名或密码输入错误,请重新输入。你还剩余” + (3 - i) + “次机会”);
}else{
System.out.println(“机会用完,退出系统”);
}
}
}
System.exit(0);
break;
case 3:
default:
System.out.println(“谢谢使用”);
System.exit(0);
break;
}
}
}
}
public class CheckData {
private CheckData() {
public static boolean checkUsername(String username)
String regx="[a-zA-Z]{6,16}";
return username.matches(regx);
}
public static boolean checkPasswrod(String password) {
String regx = “[0-9]{6,16}”;
return password.matches(regx);
}
}
public class ScannerUtils {
private ScannerUtils() {
}
public static int getNumber(Scanner scanner){
int num=0;
while (true){
if(scanner.hasNextInt()){
num= scanner.nextInt();
break;
}else{
scanner=new Scanner(System.in);
System.out.println(“输入的类型不正确,请重新输入一个整数”);
}
}
return num;
}
}
Set HashSet LinkedHashSet TreeSet 集合练习
最新推荐文章于 2025-07-24 20:36:17 发布
