尝试从ArrayList中获取多个用户名和密码

时间:2015-07-25 20:42:38

标签: java arraylist

所以我很难弄清楚为什么这不起作用,但基本上我尝试做的就是获取用户信息,这样当他们点击登录时他们就可以登录了。

private boolean login() {
    for (User user : users) {
        if (user != null) {
            System.out.println(users.size());
            String tryUser = user.getUsername();
            String tryPass = user.getPassword();
            String passText = new String(
                    LoginPanel.passwordPf.getPassword());

            if (LoginPanel.usernameTf.getText().equalsIgnoreCase(
                    tryUser)
                    && passText.equals(tryPass)) {
                return true;
            } else {
                return false;
            }
        }
    }
    return false;
}

我检查了数组并且所有用户都正确存储但由于某种原因,当我尝试获取用户名和密码时,它会从列表中的第一项获取它。

2 个答案:

答案 0 :(得分:1)

你总是return在循环中,所以你永远不会检查第一个以外的任何用户。你应该改变你的支票:

if (LoginPanel.usernameTf.getText().equalsIgnoreCase(tryUser) && passText.equals(tryPass)) {
  return true;
}
// Do not return, check next user in list
// else {
//   return false;
// }

答案 1 :(得分:0)

虽然执行以下操作似乎很直观:

$stat['rdev'] !== 0

你应该使用"继续"在下一个元素上运行for循环。

} else {
    return false;
}