java8新特性 獲取list某一列的操作
提取某一列(以name為例)
//從對象列表中提取一列(以name為例) List<String> nameList = studentList.stream().map(StudentInfo::getName).collect(Collectors.toList()); //提取後輸出name nameList.forEach(s-> System.out.println(s));
補充:java8新特性:lambda表達式:直接獲得某個list/array/對象裡面的字段集合
java8新特性: lambda表達式:直接獲得某個list/array/對象裡面的字段集合
比如,我有一張表:
entity
Category.java
service
CategoryService.java
需求:
我想獲取CategoryService.fiall()查詢出來的數據中的,所有category_type的集合
//讀取數據
List<Category> categoryList = CategoryService.fiall();
//lambda表達式
List<Integer> categoryTypeList = categoryList.stream().map(e -> e.getCategoryType()).collect(Collectors.toList());
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。
推薦閱讀:
- java8如何用Stream查List對象某屬性是否有重復
- java8 實現提取集合對象的每個屬性
- Java8 將一個List<T>轉為Map<String,T>的操作
- Java stream sorted使用 Comparator 進行多字段排序的方法
- java8中的Collectors.groupingBy用法詳解