java8处理list集合去重分组操作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013719012/article/details/83029306
//分组统计重复String的名称和数量
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("a");
Map<String,Long> map = list.stream().collect(Collectors.groupingBy(obj -> obj,Collecots.counting());

//根据对象属性分组统计
list.stream().collect(Collectors.groupingBy(OBJECT::getTestName));

//java8去重根据年纪和专业属性去除重复数据
List<ClassEntity> distinctClass = classEntities.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o -> o.getProfessionId() + ";" + o.getGrade()))), ArrayList::new));

//用hashSet去重
List<String> classNameList = new ArrayList(new HashSet(classNames));

猜你喜欢

转载自blog.csdn.net/u013719012/article/details/83029306