實體類
@Data
public class StreamTest {
private Integer id;
private Integer age;
private String name;
public StreamTest(Integer id, Integer age, String name) {
this.id = id;
this.age = age;
this.name = name;
}
}
測試Lambda.Stream
public static void main(String[] args) {
List<StreamTest> list = new ArrayList<>();
StreamTest object = new StreamTest(1,25,"ABC");
StreamTest object1 = new StreamTest(2,24,"DEF");
StreamTest object2 = new StreamTest(3,25,"GHI");
StreamTest object3 = new StreamTest(4,18,"JKL");
list.add(object);
list.add(object1);
list.add(object2);
list.add(object3);
List<Integer> ids = list.stream().map(StreamTest::getId).collect(Collectors.toList());
System.err.println("所有的id : "+ids);
List<Integer> ages = list.stream().map(StreamTest::getAge).collect(Collectors.toList());
System.out.println("未去重的年齡 : "+ages);
List<Integer> agess = list.stream().map(StreamTest::getAge).distinct().collect(Collectors.toList());
System.err.println("已去重的年齡 : "+agess);
}
輸出結果
所有的id : [1, 2, 3, 4]
未去重的年齡 : [25, 24, 25, 18]
已去重的年齡 : [25, 24, 18]