List.equals和CollectionUtils.isEqualCollection的区别

  1. List 的 equals() .首先比较两个列表大小是否相等。如果大小相等再逐个比较元素是否相等
java 复制代码
<dependency>
    <groupId>commons-collections</groupId>
    <artifactId>commons-collections</artifactId>
    <version>3.2.2</version>
</dependency>
csharp 复制代码
# Person未覆写了equals
Person per1 = new Person("name1");
Person per2 = new Person("name2");
List<Person> list1 = new ArrayList<Person>();
list1.add(per1);
list1.add(per2);
Person per3 = new Person("name1");
Person per4 = new Person("name2");
List<Person> list2 = new ArrayList<Person>();
list2.add(per3);
list2.add(per4);

System.out.println(list1.equals(list2)); // false
System.out.println(CollectionUtils.isEqualCollection(list1, list2)); //false


# Person加@Data覆写了equals
Person per1 = new Person("name1");
Person per2 = new Person("name2");
List<Person> list1 = new ArrayList<Person>();
list1.add(per1);
list1.add(per2);
Person per3 = new Person("name1");
Person per4 = new Person("name2");
List<Person> list2 = new ArrayList<Person>();
list2.add(per3);
list2.add(per4);

System.out.println(list1.equals(list2)); // true
System.out.println(CollectionUtils.isEqualCollection(list1, list2)); //true

参考

List.equals和CollectionUtils.isEqualCollection的区别

相关推荐
数智化精益手记局10 小时前
人员排班管理软件的自动化功能解析:解决传统手工人员进行排班管理耗时长的难题
运维·数据结构·人工智能·信息可视化·自动化·制造·精益工程
LeocenaY11 小时前
C语言面试题总结
c语言·开发语言·数据结构
睡觉就不困鸭12 小时前
第11天 删除有序数组中的重复项 II
数据结构
im_AMBER12 小时前
Leetcode 160 最小覆盖子串 | 串联所有单词的子串
开发语言·javascript·数据结构·算法·leetcode
Rabitebla13 小时前
【数据结构】动态顺序表实现详解:从原理到接口设计(面试视角)
c语言·开发语言·数据结构·c++·面试·职场和发展
狐璃同学13 小时前
数据结构(1)三要素
数据结构·算法
wicb91wJ613 小时前
分库分表实战:ShardingSphere落地
数据结构·postman·emacs
北顾笙98014 小时前
day29-数据结构力扣
数据结构
Shadow(⊙o⊙)14 小时前
C++常见错误解析2.0
开发语言·数据结构·c++·后端·学习·算法
数智化精益手记局14 小时前
4m变更管理实战:拆解4m变更管理四大要素的管控功能与常见难题
大数据·数据结构·数据库·人工智能·精益工程