我一直在研究这个程序,最近使用静态方法遇到了一个错误。我通常不使用静态方法,但它们在需求中。
所以我有一个静态方法 验证用户名和PassWord 它接受用户列表以及用户名和密码的输入,并将其与存储在对象中的用户名进行比较,以查看详细信息是否正确。
不幸的是,使用这种方法,它只能识别“User1”(第一个对象),每当我尝试输入user2的用户名和密码时,它总是抛出我放入的非法参数错误。
用户2当然存储在数组列表中。
这是我的主要方法:
Scanner scanner = new Scanner(System.in);
System.out.println("Enter your user name");
String userName = scanner.nextLine();
System.out.println("Enter your password name");
String passWord = scanner.nextLine();
if(User.verifyLoginByUsernameAndPassword(userList, userName, passWord)== true)
{
do something..
}
这是静态方法:
public static boolean verifyLoginByUsernameAndPassword(ArrayList<User> user, String username, String password)
{
boolean check = false;
for(User s: user)
{
if(username.equals(s.getUserName()) && password.equals(s.getPassWord()))
{
check = true;
break;
}
else
{
check = false;
throw new IllegalArgumentException("Username and password are incorrect ");
}
}
return check;
}
精慕HU
相关分类