将Java 7迁移到Java 8-forEach并返回List 如果输入为null,则返回null?

问题描述 投票:0回答:2

我的java7代码:

List<Argument<?>> args = expression.match(text);
if (args == null) {
    return null;
} else {
    List<Object> list = new ArrayList<>();
    for (Argument<?> arg : args) {
        list.add(arg.getValue());
    }
    return list;
}

我尝试使用stream +flatMap+map+ collect

List<Object> list = args.stream().flatMap(arg -> arg.getValue()).collect(Collectors.toSet());...??
java arrays java-8
2个回答
1
投票
  1. flatMap更改为map

1
投票

使用map代替flatMap

© www.soinside.com 2019 - 2024. All rights reserved.