可以使用Java 8中新增的Stream API来比较两个List中的值是否一致。

首先,将两个List转换为Stream对象,然后使用equals方法比较它们的值是否相等。代码如下:

List<String> list1 = Arrays.asList("a", "b", "c");
List<String> list2 = Arrays.asList("a", "b", "c");

boolean isEqual = list1.stream().sorted().collect(Collectors.joining())
                .equals(list2.stream().sorted().collect(Collectors.joining()));

System.out.println("两个List<String>是否相等:" + isEqual);

这里使用了sorted()方法来对Stream中的元素进行排序,然后使用joining()方法将排序后的元素连接成一个字符串,最后使用equals()方法比较两个字符串是否相等。

注意,如果两个List中的元素顺序不同,但元素值相同,也可以使用上述方法比较它们是否相等。

另外,如果两个List中包含重复元素,也需要使用去重操作,否则比较结果可能不准确。可以使用distinct()方法来去重,代码如下:

List<String> list1 = Arrays.asList("a", "b", "c", "a");
List<String> list2 = Arrays.asList("a", "b", "c");

boolean isEqual = list1.stream().distinct().sorted().collect(Collectors.joining())
                .equals(list2.stream().distinct().sorted().collect(Collectors.joining()));

System.out.println("两个List<String>是否相等:" + isEqual);

这里使用了distinct()方法去重,然后再进行排序和连接操作

Java 比较两个listString 中的值是否一致

原文地址: https://www.cveoy.top/t/topic/huSs 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录