Hej. Jeg har en arrayList med masser af objekter. Opgaven siger at Du skal bruge set så du ungår duplikation af objekter. Kan i forklar mig hvad er der galt med den kode. Har hørt at hashset har implementeret autotjek, før den adder, om den element allerede eksisterer i arrayen. Så hvis i kigger ned på if (uniqueEntries.add(element)) så burde denne tjekke om den element jeg gerne vil tiføje allerede findes eller nej. Men det der sker, den tilføjer elementet og sletter tidligerer. Er der ikke andre løsninger som er meget nemmer.?
public ArrayList codObject = new ArrayList();
public Set uniqueEntries = new HashSet();
// Opretter objektet.
String date = ((JTextField) birthday.getDateEditor().getUiComponent()).getText(); CallOfDuty cod = new CallOfDuty(emailTf.getText(), FirstNameTf.getText(), LastNameTf.getText(),
countryTf.getText(), date, playerNameTff.getText(),
jComboBox.getSelectedItem().toString());
// Tilføjer til arrayListen CodOjectArray
codObjectArray.add(cod);
// Opretter ny ArrayList.
List newList = new ArrayList();
// Løber igennem CodObject arraylist
for (Iterator iter = codObject.iterator(); iter.hasNext(); ) {
Object element = iter.next();
// Tilføj hvis det newList, hvis det ikke er duplicate.
if (uniqueEntries.add(element))
newList.add(element);
}
--