1、集合转map
list.stream().
collect(Collectors.toMap(User::getId, Function.identity()));
list.stream().
collect(Collectors.toMap(User::getId, Function.identity(),(x,y)->y));
1.1
1.2
1.3解决list转map的key冲突问题
带顺序
Collectors.toMap(DimWorkshopOwnsUnitDTO::getUnitCode, DimWorkshopOwnsUnitDTO::getUnitName, (v1, v2) -> v2, TreeMap::new)
2、forEach跳过本次循环使用return
3、for循环体中删除元素,使用迭代器
注意不可以使用Arrays.asList构建集合
4、数组转集合
5、集合去重
6,分组后获取对象属性集合-- // 对小伙伴按照性别age进行分组
public static void main(String[] args) {
List personList = new ArrayList<>();
// 四个参与测试的小伙伴
Person tom = new Person(“tom”, “男”, 11);
Person amy = new Person(“amy”, “女”, 13);
Person ali = new Person(“ali”, “男”, 12);
Person daming = new Person(“daming”, “男”, 13);
personList.add(tom);
personList.add(amy);
personList.add(ali);
personList.add(daming);
// 对小伙伴按照性别age进行分组
Map<String, Set> resultMap = personList.stream().collect(Collectors.groupingBy(Person::getSex, Collectors.mapping(Person::getName, Collectors.toSet())));
System.out.println(resultMap.toString());
}
6 分组根据key排序
adsYieldCountDTOS.stream().collect(Collectors.groupingBy(AdsYieldCountDTO::getWorkShiftCode, TreeMap::new, Collectors.toList()));
Map<Integer, List> checkMap = respList.stream().collect(Collectors.groupingBy(YieldRateResp::getCheckId, LinkedHashMap::new,Collectors.toList()));
7集合字符串排序
Collections.sort(strings);