我需要在List中复制项目。

因此,如果列表是:

["firstItem", "secondItem"]

我想返回一个列表:
["firstItem","firstItem","secondItem","secondItem"]

我正在尝试通过flatMap函数执行此操作,但不确定如何执行此操作。
List<T> duplicatedList = originalList.stream()
            .flatMap(u -> Stream.of()) // how to duplicate items??
            .collect(Collectors.toList());

最佳答案

创建两个相同项目的流:

List<String> originalList = Arrays.asList("firstItem","secondItem");
List<String> duplicatedList = originalList.stream()
        .flatMap(u -> Stream.of(u,u))
        .collect(Collectors.toList());
System.out.println(duplicatedList);

输出:
[firstItem, firstItem, secondItem, secondItem]

08-06 04:49