java两个liststring比较内容
时间: 2023-08-13 08:03:49 浏览: 55
比较两个List<String>的内容可以使用equals方法。示例代码如下:
```java
List<String> list1 = Arrays.asList("apple", "banana", "orange");
List<String> list2 = Arrays.asList("apple", "banana", "orange");
if (list1.equals(list2)) {
System.out.println("两个List相等");
} else {
System.out.println("两个List不相等");
}
```
输出结果为"两个List相等",因为list1和list2中的元素内容相同。需要注意的是,List的equals方法会判断两个List中的元素顺序是否相同,如果顺序不同则不相等。如果只需要比较两个List中的元素内容是否相同,可以使用Collection.sort方法对两个List进行排序后再进行比较。
相关问题
java 两个list怎么比较是否相等
在 Java 中,可以通过 `equals()` 方法比较两个 `List` 是否相等。示例代码如下:
```java
List<String> list1 = new ArrayList<>();
list1.add("apple");
list1.add("banana");
List<String> list2 = new ArrayList<>();
list2.add("apple");
list2.add("banana");
if (list1.equals(list2)) {
System.out.println("两个List相等");
} else {
System.out.println("两个List不相等");
}
```
如果两个 `List` 中的元素顺序和内容都相同,那么它们就是相等的。如果只是内容相同但顺序不同,那么可以使用 `Collections.sort()` 方法先对两个 `List` 进行排序,然后再比较它们是否相等。
java 两个list<String>取交集
可以使用Java 8的Stream API来实现两个List<String>的交集操作,示例如下:
```java
List<String> list1 = Arrays.asList("A", "B", "C");
List<String> list2 = Arrays.asList("B", "C", "D");
List<String> intersection = list1.stream()
.filter(list2::contains)
.collect(Collectors.toList());
System.out.println(intersection); // 输出 [B, C]
```
首先将两个List<String>分别用Arrays.asList()转换为List,然后使用Stream API的filter()方法将list1中包含在list2中的元素筛选出来,最后使用collect()方法将筛选出来的元素收集到一个新的List中。