Javaのリストからすべての重複を削除する
この簡単なチュートリアルでは、リストから重複する要素を整理する方法を説明します。まずプレーンJava、次にGuava、そして最後にJava 8 Lambdaベースのソリューションを使用します。
この記事はリンクの一部です:/java-tutorial[The Java – Back to Basic ** ]シリーズ。
1普通のJava
を使ってリストから重複を取り除く
標準のJava Collections Frameworkを使用してListから重複した要素を削除するのは、
Set
によって簡単に実行できます。
public void
givenListContainsDuplicates__whenRemovingDuplicatesWithPlainJava__thenCorrect() {
List<Integer> listWithDuplicates = Lists.newArrayList(0, 1, 2, 3, 0, 0);
List<Integer> listWithoutDuplicates = new ArrayList<>(
new HashSet<>(listWithDuplicates));
assertThat(listWithoutDuplicates, hasSize(4));
}
ご覧のとおり、元のリストは変更されていません。