カスタム オブジェクトを含む ArrayList があります。私が望むのは、カスタム オブジェクトの name プロパティに応じて、配列から重複を削除することです。Set person = new TreeSet(); でこれを達成しようとしました。しかし、それは機能していません。セットがアドレスまたは名前プロパティ以外のものを比較しているためだと思います。そのため、重複を削除しないイテレータを使用しようとしています。これは私が得たものです。
ArrayList<Person> people = new ArrayList<Person>();
Iterator<Person> iterator = people.iterator();
while (iterator.hasNext()) {
Person person = iterator.next();
if (person.getName().equals(iterator.next().getName())) {
iterator.remove();
}
}
for (Person person : people) {
System.out.println(person.getName());
}
重複が見られますが、ArrayList は変更されていません。助けが必要です。ありがとう!