java8匹配两个集合相同的集合
时间: 2024-09-10 19:19:23 浏览: 77
Java8 Stream对两个 List 遍历匹配数据的优化处理操作
3星 · 编辑精心推荐
在Java 8中,可以使用Stream API来比较两个集合是否有相同的元素。你可以使用`filter()`, `distinct()`, 和 `equals()` 方法来完成这个任务。这里是一个简单的步骤:
1. **创建流**:首先将其中一个集合转换为流(stream)。
```java
List<String> list1 = ...; // 第一个集合
List<String> list2 = ...; // 第二个集合
Stream<String> stream1 = list1.stream();
```
2. **过滤并去重**:从第一个流中过滤出与第二个集合中存在的元素,并去除重复项。
```java
Stream<String> filteredStream = stream1.filter(list2::contains).distinct();
```
3. **检查是否相等**:最后,检查过滤后的流是否等于第二个集合。如果它们有相同的元素并且没有额外的元素,则它们相等。
```java
boolean areEqual = filteredStream.equals(list2);
```
阅读全文