Java StreamのdistinctメソッドでListの重複要素を削除する

環境
Java SE 1.8
Eclipse 4.14.0

書式
List<データの型>リスト変数名1= new ArrayList<データの型>();
リスト変数名1.add(要素)
リスト変数名2 = リスト変数名1.stream().distinct().collect(Collectors.toList());
処理流れ
リストをStreamに変換します
distinctメソッドで重複要素を削除します
削除後Streamをリストに変換します。

使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
package com.arkgame.study;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
public class ArkgameDemo {
public static void main(String[] args) {
// 重複排除前のList
List<String> lstA = new ArrayList<String>();
lstA.add("tokyo");
lstA.add("oosaka");
lstA.add("tokyo");
List<String> resLst;
System.out.println("重複排除前のリストの要素");
for (String str : lstA) {
System.out.println(str);
}
System.out.println("重複排除後のリストの要素");
// Streamに変換-distinctメソッドで重複排除-Listに変換
resLst = lstA.stream().distinct().collect(Collectors.toList());
for (String str : resLst) {
System.out.println(str);
}
}
}
package com.arkgame.study; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; public class ArkgameDemo { public static void main(String[] args) { // 重複排除前のList List<String> lstA = new ArrayList<String>(); lstA.add("tokyo"); lstA.add("oosaka"); lstA.add("tokyo"); List<String> resLst; System.out.println("重複排除前のリストの要素"); for (String str : lstA) { System.out.println(str); } System.out.println("重複排除後のリストの要素"); // Streamに変換-distinctメソッドで重複排除-Listに変換 resLst = lstA.stream().distinct().collect(Collectors.toList()); for (String str : resLst) { System.out.println(str); } } }
package com.arkgame.study;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

public class ArkgameDemo {

      public static void main(String[] args) {
            // 重複排除前のList
            List<String> lstA = new ArrayList<String>();
            lstA.add("tokyo");
            lstA.add("oosaka");
            lstA.add("tokyo");
            List<String> resLst;
            System.out.println("重複排除前のリストの要素");
            for (String str : lstA) {
                  System.out.println(str);
            }
            System.out.println("重複排除後のリストの要素");
            // Streamに変換-distinctメソッドで重複排除-Listに変換
            resLst = lstA.stream().distinct().collect(Collectors.toList());
            for (String str : resLst) {
                  System.out.println(str);
            }
      }

}

実行結果
重複排除前のリストの要素
tokyo
oosaka
tokyo
重複排除後のリストの要素
tokyo
oosaka

Java

Posted by arkgame