public static void addToUserList(User newUser){
boolean hasFound = false;
for (User user : users) {
if(user.getUserID() == newUser.getUserID()){
System.out.println("DUPLICATED USER ID: " + user.getUserID() + "ALREADY EXISTS");
hasFound = true;
break;
}
}
if(hasFound = false){
users.add(newUser);
}
}
如何重構此代碼?在用戶arraylist中,不應該有按ID的重複用戶。重構添加過程
我認爲使用布爾變量有點不必要,但我找不到更好的解決方案。 P.Ss:另外如果有這樣的編碼風格的傳統,你能提供一個名字嗎?謝謝。
使用一組。特別是使用HashSet。編碼風格只是在您嘗試解決您的問題時選擇合適的數據結構。本質上,你不想將現有用戶添加到集合中,並且HashSet跟蹤唯一對象的唯一存在。 –
^使用'HashSet'需要一個正確的哈希......這通常不是免費的。 – alf