List获取集合中的重复元素

要使用 Lambda 表达式获取集合中的重复元素,你可以按照以下步骤进行操作:

创建一个列表或集合,并向其中添加元素。
使用 Stream API 的 filter() 方法结合 Lambda 表达式来筛选出重复元素。

下面是一个示例代码,在 Java 中使用 Lambda 表达式获取集合中的重复元素:

import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

public class DuplicateElementsExample {
    public static void main(String[] args) {
        List<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(2);
        numbers.add(3);
        numbers.add(2);
        numbers.add(4);
        numbers.add(3);

        Set<Integer> duplicates = new HashSet<>();

        numbers.stream()  // 转换成流
                .filter(n -> !duplicates.add(n))  // 如果添加到集合失败(即元素已存在),则说明是重复元素
                .forEach(System.out::println);  // 打印重复元素
    }
}

在上述示例中,我们使用了一个 HashSet 来存储已经出现过的元素。通过把元素添加到 HashSet 中,我们可以判断是否添加成功来确定是否为重复元素。

numbers.stream().filter(n -> !duplicates.add(n)) 这一行代码使用了 Lambda 表达式来筛选重复元素。如果元素已经存在于 HashSet 中,add() 方法会返回 false,否则返回 true。通过 !duplicates.add(n),我们可以得到返回值为 true 的重复元素。最后,使用 forEach() 方法来打印重复元素。

你可能感兴趣的:(list,数据结构)