iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >怎么在java8项目中对List对象属性去重
  • 932
分享到

怎么在java8项目中对List对象属性去重

2023-06-14 06:06:01 932人浏览 安东尼
摘要

怎么在java8项目中对List对象属性去重?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。第一种: 不使用java8 private Lis

怎么在java8项目中对List对象属性去重?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

第一种: 不使用java8

 private List<UserCar> removeDupliByRecordId(List<UserCar> userCars) { Set<UserCar> personSet = new TreeSet<UserCar>((o1, o2) ->o1.getRecordId().compareTo(o2.getRecordId())); personSet.addAll(userCars); return new ArrayList<UserCar>(personSet); }

 这也是大多数人第一想到的,借助 TreeSet 去重,其中 TreeSet 的其中一个构造函数接收一个排序算法,同时这也会用到 TreeSet 的去重策略上.

public TreeSet(Comparator<? super E> comparator) { this(new TreeMap<>(comparator)); }

第二种: 炫酷的java8写法

 List<Person> unique = persons.stream().collect(  Collectors.collectingAndThen(   Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(Person::getName))), ArrayList::new) ); unique.forEach(p -> System.out.println(p));

第三种: 炫酷的java8写法

 List<String> names = new ArrayList<>();//用来临时存储person的id List<Person> personList = persons.stream().filter(// 过滤去重  v -> {   boolean flag = !names.contains(v.getName());   names.add(v.getName());   return flag;  } ).collect(Collectors.toList());

java8根据某一属性过滤去重

//根据id去重examRoomModelLists = examRoomModelLists.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(        // 利用 TreeSet 的排序去重构造函数来达到去重元素的目的        // 根据firstName去重        () -> new TreeSet<>(Comparator.comparing(ExamRoomModel::getId))), ArrayList::new));

java8过滤StudentExamState=0的数据

em.setNoLoginExamineeCount((examinee.stream().map(ExamineeEntity::getStudentExamState).filter(x -> x == 0).collect(Collectors.toList())).size());      }

java8过滤ExamRoomStudentCount=0的数据

 List<ExamRoomModel> filterList = examRoomModelLists.stream().filter(ExamRoomModel ->  !Objects.equals(ExamRoomModel.getExamRoomStudentCount(), 0)).collect(Collectors.toList());

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网精选频道,感谢您对编程网的支持。

--结束END--

本文标题: 怎么在java8项目中对List对象属性去重

本文链接: https://www.lsjlt.com/news/268387.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么在java8项目中对List对象属性去重
    怎么在java8项目中对List对象属性去重?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。第一种: 不使用java8 private Lis...
    99+
    2023-06-14
  • java8实现List中对象属性的去重方法
    java8的stream流能完美解对象集合去重问题. List<UserCar> list1 = new ArrayList(); UserCar userCa...
    99+
    2024-04-02
  • 怎么在java项目中利用List对象列表实现去重
    这篇文章给大家介绍怎么在java项目中利用List对象列表实现去重,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、list去重1.1 实体类StudentList<Student>容量10k以上,要求去重...
    99+
    2023-05-31
    java list ava
  • java List<对象> 根据对象的一个属性进行去重
    1.如果你想根据对象的一个属性进行去重,可以使用Java 8中的Stream API。具体步骤如下: 实现一个自定义函数,该函数将用于确定两个对象是否相等,例如: public static Predicate distinctByPro...
    99+
    2023-09-01
    java list
  • 怎么在python中对list去重
    这篇文章给大家介绍怎么在python中对list去重,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和面向对象的脚本语言,其最初的设计是用于编写...
    99+
    2023-06-14
  • java 对象List中对象的某一属性重新赋值
    描述: 在我们开发过程中经常会遇到在拿到一个对象list集合的时候回对某一个字段重新赋值,比如:在无任务下面的若干子任务,开始执行主任务对子任务的状态统一设置待执行。这个时候就需要使用 Java8 s...
    99+
    2023-09-01
    java
  • java8如何用Stream查List对象某属性是否有重复
    目录使用Stream查List对象某属性是否有重复练习一下stream的一些用法list的五种去重方式方法一:使用java8新特性stream进行List去重方法二:双重for循环去...
    99+
    2024-04-02
  • java8如何根据list对象中的属性过滤筛选
    目录根据list对象中的属性过滤筛选根据性别筛选出所有的女同学list根据对象某个字段或多个字段去重、筛选、List转Map、排序、分组、统计计数等简单示例如下过滤筛选分组去重Lis...
    99+
    2024-04-02
  • 根据list中对象的属性去重和排序小结(必看篇)
    如下所示://去重public class User { private int id; private String name; private int age; public User(){} public...
    99+
    2023-05-31
    java list 对象
  • ES6中怎么去除Array对象重复项
    这篇文章将为大家详细讲解有关ES6中怎么去除Array对象重复项,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。输入例子[false, true,&...
    99+
    2024-04-02
  • 怎么在JavaScript中对象数组去重
    怎么在JavaScript中对象数组去重?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。JavaScript有什么特点1、js属于一种解释性脚本语言;2、在绝大多数浏览器的支...
    99+
    2023-06-14
  • 怎么在JavaScript中遍历对象属性
    本篇文章为大家展示了怎么在JavaScript中遍历对象属性,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。JavaScript是什么JavaScript是一种直译式的脚本语言,其解释器被称为Java...
    99+
    2023-06-14
  • 怎么在JavaScript中为对象添加属性
    本篇文章给大家分享的是有关怎么在JavaScript中为对象添加属性,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。JavaScript是什么JavaScript是一种直译式的脚...
    99+
    2023-06-14
  • es6数组对象怎么去重
    ES6中可以使用Set和Array.from()方法来进行数组对象的去重。方法一:使用Set去重```let arr = [{id:...
    99+
    2023-10-09
    es6
  • JavaScript中怎么删除对象属性
    今天就跟大家聊聊有关JavaScript中怎么删除对象属性,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 1.将属性设置为 undefin...
    99+
    2024-04-02
  • 怎么在java中对数组去重
    怎么在java中对数组去重?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Java的特点有哪些Java的特点有哪些1.Java语言作为静态面向对象编程语言的代表,实现了面向对象理...
    99+
    2023-06-14
  • 怎么在postgresql中对数据去重
    在postgresql中对数据进行去重的方法:1.启动postgresql服务;2.登录postgresql数据库;3.使用数据库;4.在数据库创建表并插入数据;5.查询表中重复的数据;6.执行命令删除重复数据;具体步骤如下:首先,在命令行...
    99+
    2024-04-02
  • ES6对象属性怎么优化
    这篇文章主要为大家展示了“ES6对象属性怎么优化”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“ES6对象属性怎么优化”这篇文章吧。ES6常见小优化 - 对象属性const x,y&nb...
    99+
    2023-06-08
  • JavaScript中属性是对象最重要的部分
    这篇文章主要介绍了JavaScript中属性是对象最重要的部分,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 属性是任何 JavaScri...
    99+
    2024-04-02
  • 怎么在golang中对slice元素去重
    怎么在golang中对slice元素去重?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。什么是golanggolang 是Google开发的一种静态强类型、编译型...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作