【发布时间】:2016-09-12 11:45:12
【问题描述】:
这是我第一次使用 lambda 表达式、函数作为参数或一般的函数式编程......
如何在这段代码中调用 B 函数?
public class Fp_example<T>
{
public static void main(String[] args)
{
ArrayList<String> names = new ArrayList<>(asList("A"));
new Fp_example.b_function(names, /* (1) */);
}
public void b_function(ArrayList<T> l, Function<T,T> func)
{
l.forEach( (t) -> {func.apply(t);});
}
}
我需要在 (1) 中编写我的函数,或者我可以编写另一个函数并在 (1) 中调用它吗?
【问题讨论】:
-
你到底想做什么?
-
如果这是您的第一种方法,我建议您先阅读 Oracle Java 教程docs.oracle.com/javase/tutorial/java/javaOO/…。他们将教你如何使用 lambda 表达式。通过这种方式,您将能够更有效地学习。
-
我想在我的 ArrayList 的每个元素上调用一个函数。此函数将 T 元素作为输入并返回 T 元素 @PeMapModder
-
@MarcoCastano 返回值有什么作用?它将在 forEach 调用中被忽略。
-
只需打印 ArrayList 元素连接另一个字符串...我的函数将做什么并不重要...我只想知道如何调用和传递它...@Tunaki 感谢您的链接
标签: java function generics lambda functional-programming