【发布时间】:2015-07-17 20:28:09
【问题描述】:
Java 中有没有类似于 Haskell 或 Schema 中的 map 函数或 C# 中的 Select extensor 方法的内置函数? 我只是想用更短的方式编写这种代码:
List<String> names = new ArrayList<String>();
foreach (User element : getUsers()) {
names.add(element.getName());
};
return names;
更短的方式(在 C# 中)
List<String> names = getUsers().Select(x => x.getName()).ToList();
我还需要一种以“友好”方式将函数作为参数传递的方式。
【问题讨论】:
-
看看 Java 8 的流。如果您不能使用 Java 8,则创建一个具有您需要的方法签名和匿名类的接口。
标签: java lambda functional-programming