gpt4 book ai didi

java - 使用流的 map 收集产生奇怪的编译错误

转载 作者:搜寻专家 更新时间:2023-10-31 20:08:10 25 4
gpt4 key购买 nike

我有这个方法:

 public void fields(TableField... s){
// compilation error on next line
Collection<String> fields = Arrays.asList(s).stream().map(v -> v.getValue());
this.fields.addAll(fields);
}

TableField 看起来很简单:

class TableField {
public String getKey() {
return this.key;
}

public String getValue() {
return this.value;
}
}

但我看到了这个编译错误:

Incompatible types. Required Collection but 'map' was inferred to Stream: no instance(s) of type variable(s) R exist so that Stream conforms to Collection

最佳答案

map 返回转换后的 Stream。如果你想要一个集合,你需要收集流。例如:

Collection<String> fields =
Arrays.asList(s).stream().map(v -> v.getValue()).collect(Collectors.toList());

关于java - 使用流的 map 收集产生奇怪的编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54663994/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com