Java 比较两个List的差异,并取出不同的对象
来源:互联网 发布:视频数据分析的应用 编辑:程序博客网 时间:2024/05/22 06:34
前段时间需要获得两个list的不同的对象信息,今天记录下来,作为一个备忘,也希望能对别人有所帮助。
public class Student { private int id; private String name; private String email; Student(int id,String name,String email){ this.id = id; this.name = name; this.email = email; } public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } //重写equals方法只要age相等,我们就认为对象两个相等 @Override public boolean equals(Object obj) { if(obj instanceof Student){ Student st=(Student) obj; return (name.equals(st.name)); }else{ return super.equals(obj); } } @Override public int hashCode() { return name.hashCode(); }}
/** * * @param list1 * @param list2 * @return */private static List<Student> getDifferent(List<Student> prelist, List<Student> curlist) { List<Student> diff = new ArrayList<Student>(); Map<Student,Integer> map = new HashMap<Student,Integer>(curlist.size()); for (Student stu : curlist) { map.put(stu, 1); } for (Student stu : prelist) { if(map.get(stu)!=null) { map.put(stu, 2); continue; } diff.add(stu); } for(Map.Entry<Student, Integer> entry:map.entrySet()) { if(entry.getValue()==1) { diff.add(entry.getKey()); } } for(Student stu:diff){ System.out.println(" the differ "+stu.getId()+"\t"+stu.getName()); } return diff; }
0 0
- Java 比较两个List的差异,并取出不同的对象
- js比较两个数组对象,取出不同的值
- JAVA中如何取出两个不同List对象(对象一致)中所有不同的对象的集合
- Java比较两个对象是否相同并获得不同的字段
- 比较两个数组,并取出相同的元素
- java实现两个不同list对象合并后并排序
- VS2008 比较两个数据库的表结构差异,并同步
- 有两个不同list,需要对比两个list内容且输出差异的内容
- 比较两个DataTable的差异
- 用java比较两个文本文件的不同
- git 比较同一文件的不同的两个版本之间的差异
- 比较两个List的算法 java实现
- Java遍历Map,List的不同方法,并比较其性能
- 利用eclipse比较两个文件的代码差异或者一个文件不同版本之间的异同
- 通过java的反射从list中取出对象从而取出属性值
- 比较两个List元素是否相同,查找出两个list的不同元素
- java两个list中保存bean对象,找出其中某一属性不同的元素
- java两个list中保存bean对象,找出其中某一属性不同的元素
- Linux iptables防火墙实用模板
- Total Commander 配置
- php验证码实现源码
- 游戏术语扫盲贴(手游人必懂)
- linux文件重命名命令
- Java 比较两个List的差异,并取出不同的对象
- Linux CPU实时监控mpstat命令详解
- linux内核register_chrdev_region()系列函数
- 通用网络采集系统的开发实验
- Linux进程内存分析pmap命令(转)
- Android.mk添加第三方jar包
- vtk安装
- 进度条实现
- Linux rm 删除指定文件