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的区别

相关推荐
xiaolang_8616_wjl10 小时前
c++超级细致的基本框架
开发语言·数据结构·c++·算法
LYFlied11 小时前
【每日算法】LeetCode124. 二叉树中的最大路径和
数据结构·算法·leetcode·面试·职场和发展
yyy(十一月限定版)12 小时前
c语言——栈和队列
java·开发语言·数据结构
xu_yule13 小时前
算法基础-背包问题(01背包问题)
数据结构·c++·算法·01背包
蒙奇D索大13 小时前
【数据结构】考研408 | 伪随机探测与双重散列精讲:散列的艺术与均衡之道
数据结构·笔记·学习·考研
嘻嘻嘻开心13 小时前
List集合接口
java·开发语言·list
budingxiaomoli13 小时前
分治算法-快排
数据结构·算法
dragoooon3413 小时前
[C++——lesson30.数据结构进阶——「红黑树」]
开发语言·数据结构·c++
蓝色汪洋15 小时前
数码串和oj
数据结构·算法
山楂树の16 小时前
有效的括号(栈)
数据结构·算法