java实体类 判断 字段_java8 根据实体类中的某个字段对实体类去重
1.测试代码示例
import com.alibaba.fastjson.JSON;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.TreeSet;
import java.util.stream.Collectors;
@Slf4j
public class test {
public static void main(String[] args) {
//1.构造测试数据
List oldStudents = new ArrayList<>();
Student student1 = new test().new Student();
student1.setName("小王");
student1.setOnlyKey("123");
oldStudents.add(student1);
Student student2 = new test().new Student();
student2.setName("小王");
student2.setOnlyKey("123");
oldStudents.add(student2);
Student student3 = new test().new Student();
student3.setName("小孙");
student3.setOnlyKey("123444");
oldStudents.add(student3);
log.info("去重之前的数据:{}", JSON.toJSONString(oldStudents));
//java8 去重
List newStudents = oldStudents.stream().collect(Collectors.collectingAndThen(
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(Student::getOnlyKey))), ArrayList::new)
);
log.info("去重之后的数据:{}",JSON.toJSONString(newStudents));
}
@Data
class Student {
private String name;
private String onlyKey;
}
}
2.测试结果
image.png
3.适用场景
像从数据库查询数据 selectOne but select many 这种问题,代码中依此可以进行规避处理OvO
java实体类 判断 字段_java8 根据实体类中的某个字段对实体类去重相关推荐
- oracle 取字段长度为5,oracle9i中varchar2(5)字段长度不足5前面补0?
oracle9i中varchar2(5)字段长度不足5前面补0? mip版 关注:201 答案:2 悬赏:20 解决时间 2021-01-19 11:34 已解决 2021-01-18 23:5 ...
- java 实体类返回大写_解决springboot bean中大写的字段返回变成小写的问题
例如我的bean中有以下4个字段 private String code; private String _TOKENUUMS; private String TGC; private String ...
- Java stream判断两个相同对象集合中的部分字段的相同或者不同并作出处理,重写equals和hash方法
首先需要重写equals方法和hash方法 @Overridepublic boolean equals(Object o) {if (this == o) return true;if (o == ...
- stream 提取某字段_java8从list集合中取出某一属性的值的集合案例
List orderNoList=list.stream().map(Order::getOrderNo).collect(Collectors.toList()); https://blog.csd ...
- java把date改成时间戳_spring处理数据库中Date类型字段转换成时间戳问题
有两种方式可以解决日期转换Json问题: 1.(不推荐)局部修改,自定义注解进行将日期类型转换为Date类型. 2.(强烈推荐)全局修改,用MappingJackson2HttpMessageConv ...
- java中用if判断性别,if(sex.equals(男)){中 .equals是什么含义?
import java.util.Scanner; public class 嵌套if选择结构 { public static void main(String[] args) { Scanner i ...
- mongodb 如何删除 字段值为 json对象中的某个字段值
例如: { attributes: { birthday:'1988-01-01', name: 'aq' } } birthday是attributes字段的value的一个字段, 我要删除birt ...
- db2增加decimal类型字段小数位_05725.16.1Hive中decimal类型字段.0结尾数据显示异常问题处理...
作者:辉少 1 问题描述 Fayson今天在Hive中插入字段类型为decimal的数据时发现,插入数据为1.0, 1.000等以 .0结尾的数据在hive中显示为1,即不显示末尾的.0 ,如下: C ...
- oracle blob字段索引,在oracle 数据库中使用 Blob 字段存储 一张图片并读取
1. 进行数据库的设置 create table image_lob(t_id varchar2(5) not null,t_image blob not null); create or repl ...
- mysql 同样字段的索引_MySQL表中具有相同字段的两个索引
MySQL 5.7.9 – 删除id_type索引并没有什么区别.多列索引(type_date)适用于两个查询. 解释查询输出: mysql> explain SELECT id_type,da ...
最新文章
- Linux内核移植之二:Kconfig分析
- 牛客网《BAT面试算法精品课》学习笔记
- windows下基于IIS配置ssl证书
- java整合flex
- multi task训练torch_手把手教你使用PyTorch(2)-requires_gradamp;computation graph
- python的继承用法_python之继承中组合用法与菱形继承关系查找法
- 实用教程丨官方下载Oracle各版本安装软件及补丁包
- Sharding-Sphere,Sharding-JDBC_分库分表(垂直分库_垂直分表)_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记003
- Python 学习笔记 - 作用域小知识
- MySQL Innodb Engine -- 文件格式(innodb_file_format)
- 《亡灵序曲》各版本收集
- 遥感影像、DEM免费下载以及MPT制作
- 清华大学,北京大学,浙江大学公布计算机考研校线!有的不变,有的下降5分!...
- 电源硬件设计----线性调压器与LDO
- echarts 地图行政区划压缩_echarts地图数据的压缩
- 【TypeScript】Object、object和{}类型
- nRF52840作为通信模块与Arduino的联动
- coffeescript_在服务器上使用CoffeeScript
- linux定时重启服务
- BitTorrent种子文件的解析+(1)
热门文章
- python ctypes 详解_python与C语言调用模块 ctypes的详解
- java monitor 翻译_管程(Monitor)概念及Java的实现原理
- 新乡医学院2018计算机考试题,新乡医学院继教2018级局部解剖学复习自测下肢答案...
- C#中输入法全角转换半角
- ES6扩展运算符的几个小技巧
- mysql常用命令整理
- 实时控制软件设计第二周作业-停车场门禁控制系统状态机设计
- python---字符编码
- 匹配yyyy-mm-dd日期格式的的正则表达式
- 赋予用户最高权限的一点“挫折”