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

相关推荐
代码雕刻家4 小时前
1.4.课设实验-数据结构-单链表-文教文化用品品牌2.0
c语言·数据结构
云边有个稻草人4 小时前
Rust 借用分割技巧:安全解构复杂数据结构
数据结构·安全·rust
侯小啾4 小时前
【22】C语言 - 二维数组详解
c语言·数据结构·算法
TL滕4 小时前
从0开始学算法——第一天(如何高效学习算法)
数据结构·笔记·学习·算法
yuuki2332335 小时前
【数据结构】双向链表的实现
c语言·数据结构·后端
我不是彭于晏丶6 小时前
238. 除自身以外数组的乘积
数据结构·算法
代码雕刻家6 小时前
1.6.课设实验-数据结构-栈、队列-银行叫号系统2.0
c语言·数据结构
Violet_YSWY6 小时前
任何数据结构的构造或初始化,都应指定大小,避免数据结构无限增长吃光内存【示例】
java·数据结构
代码雕刻家7 小时前
1.7.课设实验-数据结构-二叉树-文件夹创建系统
c语言·数据结构
sigd8 小时前
排队选人-2024年秋招-小米集团-软件开发岗-第二批笔试
数据结构·算法