创建一个用户类类型的集合,手动输入用户库
主要是判定输入的用户名和密码是否与库中的匹配
做好区别是用户名输入错误还是密码输入错误的提示。
定义用户类
public class User{
String username;
String keyword;
public User(String username, String keyword) {
this.username = username;
this.keyword = keyword;
}
}
主程序
import java.util.ArrayList;
import java.util.Scanner;
/**
* 登录系统
*/
public class Test10 {
public static void main(String[] args) {
ArrayList<User> user = new ArrayList<>();
boolean userbo = false, keybo = false;//判定是用户名还是密码错误,优先判断用户名错误
user.add(new User("jack", "1234"));
user.add(new User("rose", "5678"));
user.add(new User("tom", "0000"));//手动录入账号密码
for (int i = 0; i < user.size(); i++) {
System.out.println(user.get(i).username + "-" + user.get(i).keyword);//输出集合中的账号密码,好方便下面的debug
}
Scanner scanner = new Scanner(System.in);
System.out.println("请输入用户名:");
String username = scanner.nextLine();
System.out.println("请输入密码:");
String keyword = scanner.nextLine();
for (int i = 0; i < user.size(); i++) {
if (username.equals(user.get(i).username) == true) {
userbo = true;
if (keyword.equals(user.get(i).keyword) == true) {
keybo = true;
break;
}
}
}
System.out.print("登录结果:");
if (userbo == false)//根据布尔类型的变量来决定输出什么错误提示
System.out.println("没有该用户");
else if (keybo == false)
System.out.println("密码有误");
else
System.out.println("登录成功");
}
}