1. 程式人生 > 其它 >舉例說明java stream-distinct去重操作的使用

舉例說明java stream-distinct去重操作的使用

技術標籤:streamjavaxmllambdaspark

java stream的distinct可以對集合進行去重,舉例如下:

package demo;

import java.util.ArrayList;
import java.util.List;

public class StreamDistinctDemo {

    public static void main(String[] args) {
        List<Integer> integerList = new ArrayList<>();
        integerList.add(1);
        integerList.add(2);
        integerList.add(3);
        integerList.add(4);
        integerList.add(5);
        integerList.add(3);
        integerList.add(3);
        integerList.forEach(e -> System.out.print(e));
        System.out.println("*********");
        integerList.stream().distinct().forEach(e -> System.out.print(e));
    }
}

列印結果如下:

1234533*********
12345
distinct()是一箇中間操作,不是終止操作,如果需要獲取去重後的集合,需使用終止操作如下:
integerList=integerList.stream().distinct().collect(Collectors.toList());