// list 转map 很多情况下,需要遍历2层for循环 ,时间复杂度为O(n的平方),可以借助 转map,遍历循环一层for循环,需要的从map中取数据,提升速度,Map<Long, User> map = list2Map(list, User::getId);
//map的时间复杂度为O(1)可忽略不计 ,一下是对list转map的封装
public static <T, K> Map<K, T> list2Map(List<T> list, Function<? super T, ? extends K> keyMapper) { if (list == null || list.size() == 0) { return new HashMap<>(); } return list.stream().collect(Collectors.toMap(keyMapper, Function.identity(), (key1, key2) -> key2)); }
//使用案例
标签:Function,map,封装,Map,复杂度,list From: https://www.cnblogs.com/tdf-/p/18054004