最佳答案
目前正在研究 Java8的 lambda 表达式和方法引用。
我希望将一个没有参数且没有返回值的方法作为参数传递给另一个方法。我是这么做的:
public void one() {
System.out.println("one()");
}
public void pass() {
run(this::one);
}
public void run(final Function function) {
function.call();
}
@FunctionalInterface
interface Function {
void call();
}
我知道在 java.util.function
中有一组预定义的函数接口,比如 Function<T,R>
,但是我没有发现一个没有参数且不产生结果的接口。