【发布时间】:2018-01-11 23:32:11
【问题描述】:
我有一个通用的私有方法,它执行常见任务并被其他方法使用。泛型方法具有if 和else 条件以支持调用的其他方法。示例:
private void myGenericMethod(String name, int age){
common task1;
common task2;
if(name!= null && name.length > 0){
specific task 1;
specific task 2;
} else{
specific task 3;
specific task 4;
}
if(age > 18){
specific task 1`;
specific task 2`;
}
}
我想使用 Java 8 lambda,并且我使用 invoke 方法创建了一个名为 Invoker 的功能接口。
public interface Invoker{
public void invoke()
}
现在我的通用方法看起来像这样,公共方法适当地处理调用函数回调:
private void myGenericMethod(Invoker invoker){
common task1;
common task2;
invoker.invoke();
}
JDK中有没有我可以使用的功能接口,而不是自己创建这个接口?
【问题讨论】:
-
您可以查看
java.util.function包并选择适合您要求的包。我不能推荐一个,因为我不知道你的具体任务是否有争论(或更多)等等......
标签: java generics lambda java-8