jdk 1.8 处理 map和list

1.map 的 key 和 value 反转

 

 2. list<Object> 取两列转成  map<String,String> map

 

 

3. list<Object> 转成 map 集合  map<String,list<Object>> map 集合

 

 

4. list<Object> 转成 map 对象  map<String,Object> map 集合

 

 

 5.list<Object> 集合 转成 list<String> 集合   

 

 

  5.两个 list<Object>  集合 合并  成一个  list<Object> 集合   

6.计算一个 list<Object>  集合 其中一个字段的总和

第一种:

 第二种:

 7.list<ObjectA> 转换成  list<ObjectB>

 8.List<Object> list  set 其中一个属性值

 9.List<ObjectA> 转  List<ObjectB>

9+1 . List<ObjectA> 转 Map<String,List<String>>  

9+2 . List<ObjectA> 转 Map<String,Set<String>>  

Map<String, Set<String>> map = new HashMap<>();

image

 

 

 List 里面 取 list 

 

 10. List<Object> list 取  一个属性的最大和最小值 

 

 

9+2 ,List<Map<String,Object>>  转    Map<String,Map<String,Object>>

 

List<Map<String,Object>> list = new ArrayList<>();

 Map<String,Map<String,Object>> map = list.stream().collect(Collectors.toMap(each->Objects.toString(each.get("id"),""),each->each,(key1,key2)->key1));

 

9+3.  List<Map<String,String>> 转成  Map<String,String>

List<Map<String,String>> list = new ArrayList<>();

Map<String,String> map = list.stream().collect(Collectors.toMap(each->each.get("id"),each->each.get("name"),(key1,key2)->key1));

9+4,

List<Map<String,String>> list = new ArrayList<>();

Map<String,Map<String,String>> map = list.stream().collect(Collectors.toMap(each->each.get("id"),each->each,(key1,key2)->key1));

 

10 . List<Integer> list 求和 (reduct函数 从左向右 减少)

 

 sorted() 函数,把什么分类 ,,startsWith 函数  表示起始位置

 collect 函数,聚合 成 集合。

 10++;   List<String>  统计每个元素的个数

 

 Map<String, Long> mapNum = gxry.stream().collect(Collectors.groupingBy(t -> t, Collectors.counting()));

 11.stream() 倒序和正序方法

 

 10 快速插入批量数据

 11.List<Object> list 去重

List<UserUaaInfo> distinctList = list.stream() .collect(Collectors.collectingAndThen( 

Collectors.toMap(UserUaaInfo::getAccount, Function.identity(), (v1, v2) -> v1),map -> new ArrayList<>(map.values()) ));

image

 

12 转map 去重

List<RhUserEntity> rhUserEntities = userMap.get(req.getSubjectId());

 Map<String, String> map = rhUserEntities.stream().collect(Collectors.toMap(RhUserEntity::getUserId, RhUserEntity::getName, (v1, v2) -> v1));

 

image

 

posted @ 2022-09-20 20:02  黑狗已醒  阅读(1306)  评论(0)    收藏  举报