我经常这样转换列表
myList.stream().map(el -> el.name).collect(Collectors.toList())
有没有更短的版本?
最佳答案
没有更短的方法可以使用流来做到这一点。
您可以导入 import static java.util.stream.Collectors.*;
然后使用 toList
如下来缩短代码一点但除此之外。下面是使用流的紧凑形式:
myList.stream().map(el -> el.name).collect(toList());
你也可以使用方法引用
myList.stream().map(T::getName).collect(toList());
其中 T
是包含 name
的类型的名称,虽然这不能保证更短,具体取决于类型名称的长度,但确实提供了更好的 可读性,这非常重要。
最终,如前所述,这是最紧凑的。
关于java - list->stream->map()->list 的快捷方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58154667/