在Java中比较两个List中对象的值可以通过以下几种方法:
- 使用equals()方法比较两个List中的对象值是否相等。可以通过遍历两个List中的对象逐个比较,或者直接使用List的equals()方法进行比较。
List<Object> list1 = new ArrayList<>();
List<Object> list2 = new ArrayList<>();
// 添加对象到list1和list2中
if(list1.equals(list2)){
System.out.println("两个List中的对象值相等");
} else {
System.out.println("两个List中的对象值不相等");
}
- 使用Collections的containsAll()方法比较两个List中的对象值是否相等。该方法会比较两个List中的元素是否一致,不考虑元素的顺序。
List<Object> list1 = new ArrayList<>();
List<Object> list2 = new ArrayList<>();
// 添加对象到list1和list2中
if(list1.size() == list2.size() && list1.containsAll(list2)){
System.out.println("两个List中的对象值相等");
} else {
System.out.println("两个List中的对象值不相等");
}
- 使用Stream API进行比较。可以将两个List中的对象转换为Stream,然后使用Stream的equals()方法比较两个Stream是否相等。
List<Object> list1 = new ArrayList<>();
List<Object> list2 = new ArrayList<>();
// 添加对象到list1和list2中
boolean isEqual = list1.stream()
.allMatch(obj -> list2.contains(obj))
&& list2.stream()
.allMatch(obj -> list1.contains(obj));
if(isEqual){
System.out.println("两个List中的对象值相等");
} else {
System.out.println("两个List中的对象值不相等");
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 55@qq.com 举报,一经查实,本站将立刻删除。转转请注明出处:https://www.szhjjp.com/n/902490.html