Lambda.Stream使用

實體類

@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]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章