【发布时间】:2015-05-13 14:34:48
【问题描述】:
我正在为一个学校项目的登录系统编写验证的一部分。 我正在尝试遍历包含成员的 ArrayList。它只适用于 ArrayList 中的一个对象,但只要有多个 for 循环就会继续运行。
public void confirmation(TextField username, PasswordField password) throws NameException {
data.loadDatabase();
for (int i = 0; i < data.LoginMembers.size(); i++) {
if (username.getText().equals(data.LoginMembers.get(i).getUsername())) {
this.a = true;
System.out.println("Username right");
if (password.getText().equals(data.LoginMembers.get(i).getPassword())) {
this.b = true;
System.out.println("Password right");
this.user = data.LoginMembers.get(i).getClass().getSimpleName().toString();
} else {
System.out.println("Password wrong")
this.a = false;
throw new NameException();
}
} else {
System.out.println("Username wrong");
this.a = false;
throw new NameException();
}
}
}
【问题讨论】:
-
你的意思是你得到了无限循环?
-
如果您使用 for-each 循环,这将更具可读性