流类的distinct()方法返回由该流的不同元素组成的流。语法如下-
Stream<T> distinct()
以下是在Stream类中实现distinct()方法的示例-
import java.util.*;
public class Demo {
public static void main(String[] args) {
List<Integer> list = Arrays.asList(10, 30, 40, 40, 50, 70, 90, 90, 100);
System.out.println("List = "+list);
System.out.println("Displaying only the distinct elements = ");
list.stream().distinct().forEach(System.out::println);
}
}输出结果
List = [10, 30, 40, 40, 50, 70, 90, 90, 100] Displaying only the distinct elements = 10 30 40 50 70 90 100
让我们看另一个例子-
import java.util.*;
public class Demo {
public static void main(String[] args) {
List<Integer> list = Arrays.asList(10, 30, 40, 40, 50, 70, 90, 90, 100);
System.out.println("List = "+list);
System.out.println("Count of distinct elements = "+(list.stream().distinct().count()));
System.out.println("Displaying only the distinct elements = ");
list.stream().distinct().forEach(System.out::println);
}
}输出结果
List = [10, 30, 40, 40, 50, 70, 90, 90, 100] Count of distinct elements = 7 Displaying only the distinct elements = 10 30 40 50 70 90 100