-2
其實我想檢查是否有任何用戶對象與給定的用戶名和密碼,並從用戶列表中返回用戶。你們能告訴我實施這個最簡單的方法嗎?提前致謝。java檢查列表中的對象的屬性值
其實我想檢查是否有任何用戶對象與給定的用戶名和密碼,並從用戶列表中返回用戶。你們能告訴我實施這個最簡單的方法嗎?提前致謝。java檢查列表中的對象的屬性值
您可以做地圖的地圖。外部地圖是用戶名和內部密碼。這是地圖<字符串,地圖<字符串,用戶>>
更合適的可能是創建具有{用戶名,密碼}域對象的用戶,並做了一套覆蓋equals和哈希是這樣的:
class User {
String username;
String password;
equals(Object other){
return other.username.equals(this.username) && other.password.equals(this.password);
}
hashCode() { //hash the two values together
return (username+password).hashCode();
}
}
然後有一組用戶設置<用戶>,稱之爲設定。
checkIfUserValid(String user, String password){
u = new User(user, password);
return set.contains(u);
}
第一方法的好處刪除與所有它的密碼的用戶(如果有多個密碼可能),在O(#passwords)的能力例如..與之相對另一種方法,其給出封裝,但會花費迭代所有用戶來檢查user.username == usernameSoughtAfter;
你是什麼意思的用戶對象? –
如果你只有一個列表,重複它並檢查每個對象。如果您可以改爲創建地圖,或者添加列表,請在地圖中查找。 – RealSkeptic
使用用戶名和密碼的HashMap你可以爲現有用戶 – nullpointer