java - list->stream->map()->list 的快捷方式

标签 java java-stream

我经常这样转换列表

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/

相关文章:

java - Trove jar THashMap 类未找到异常

java - JSP、Java、Spring、迭代 HashMap 并从其值调用基本 getter 方法?

java - SWF : End workflow based on Promise

java - 使用 Java 8 流如何将 Map<String, List<Something>> 转换为 Map<String, Integer>?

java - 是否可以利用Stream API提供的并行性来调用固定数量的相互独立的方法?

Java:使用 lambda 在流中查找多个最小/最大属性值

java - 带有 AndroidAnnotations NoClassDefFoundError 的 Android Studio

java - 使用 Java Stream API 比较 2 个集合和修改元素

java - Quartz @DisallowConcurrentExecution 未按预期工作