ArrayList
もしCollection
の中に重複を入れたくないのであれば、なぜ重複を許すCollection
を使っているのかを考えるべきです。繰り返される要素を削除する最も簡単な方法は、その内容を Set
(重複を許さない) に追加してから、Set
を ArrayList
に戻すことです。
Set<String> set = new HashSet<>(yourList);
yourList.clear();
yourList.addAll(set);
もちろん、これはArrayList
内の要素の順序を破壊します。
ArrayList "を "HashSet "に変換することで、重複したデータを効果的に削除することができますが、挿入順序を保持する必要がある場合には、次のようなバリエーションを使用することをお勧めします。
// list is some List of Strings
Set<String> s = new LinkedHashSet<>(list);
その後、List
の参照を戻す必要がある場合は、変換コンストラクタを再度使用することができます。