身份验证代码Java
经过一些研究和朋友的帮助,我可以制作一个方法(authenticificate),将用户在主界面中给出的用户名和密码与登录列表中给出的用户名和密码进行比较。问题是方法总是返回false,我找不到问题 提前感谢你的帮助 主要 使用者 用户列表身份验证代码Java,java,login,hashset,Java,Login,Hashset,经过一些研究和朋友的帮助,我可以制作一个方法(authenticificate),将用户在主界面中给出的用户名和密码与登录列表中给出的用户名和密码进行比较。问题是方法总是返回false,我找不到问题 提前感谢你的帮助 主要 使用者 用户列表 public class UserList { private HashSet<User> loginList;emphasized text public UserList() { Scanner scan; loginLi
public class UserList {
private HashSet<User> loginList;emphasized text
public UserList() {
Scanner scan;
loginList = new HashSet();
try {
scan = new Scanner(new File("src/boitedejeux/Logins.txt"));
String ligne = scan.nextLine();
while (scan.hasNext()) {
ligne = scan.nextLine();
String[] res = ligne.split(",");
loginList.add(new User(res[0], (res[1])));
}
} catch (FileNotFoundException e) {
System.out.println("Erreur");
}
}
public boolean authenticate(String username, String password) {
if (null == loginList) {
throw new IllegalStateException("The user list isn't initialised");
}
return loginList.stream()
.filter(usern -> usern.getUsername().equals(username))
.filter(passw -> passw.getPassword().equals(password))
.findFirst()
.isPresent();
}
}
删除txt中逗号后的空格,或将
String[]res=ligne.split(“,”
的行更改为使用空格拆分String[]res=ligne.split(“,”
)
public class User {
protected String username;
protected String password;
public User(String username, String password) {
this.password = password;
this.username = username;
}
public String getUsername() {
return username;
}
public String getPassword() {
return password;
}
@Override
public boolean equals(Object o) {
if (o instanceof User) {
return ((User) o).username.equals(username);
}
return false;
}
@Override
public int hashCode() {
int hash = 7;
hash = 97 * hash + Objects.hashCode(this.username);
return hash;
}
}
public class UserList {
private HashSet<User> loginList;emphasized text
public UserList() {
Scanner scan;
loginList = new HashSet();
try {
scan = new Scanner(new File("src/boitedejeux/Logins.txt"));
String ligne = scan.nextLine();
while (scan.hasNext()) {
ligne = scan.nextLine();
String[] res = ligne.split(",");
loginList.add(new User(res[0], (res[1])));
}
} catch (FileNotFoundException e) {
System.out.println("Erreur");
}
}
public boolean authenticate(String username, String password) {
if (null == loginList) {
throw new IllegalStateException("The user list isn't initialised");
}
return loginList.stream()
.filter(usern -> usern.getUsername().equals(username))
.filter(passw -> passw.getPassword().equals(password))
.findFirst()
.isPresent();
}
}
Test, Password
Test2, Password2