是否有可能做某事......
function sum(num1, num2, onComplete)
{
var result = num1 + num2;
onComplete(result);
}
(function(){
sum(3, 5, function(res){alert(res)});
})()
在Java?
我想做的事情就像我之前写的那样,而不需要关心用户的Java版本(通用版本)。
答案 0 :(得分:3)
您可以使用Java 6/7使用命令模式。
public interface Command<T> {
public void execute(T t);
}
然后:
public void sum(int num1, int num2, Command<Integer> onComplete) {
int result = num1 + num2;
onComplete.execute(result);
}
使用示例:
someObj.sum(1, 2, new Command<Integer>() {
public void execute(Integer result) {
System.out.println("Result is: " + result);
}
});
答案 1 :(得分:1)
在Java 8中,您可以使用Lambdas来执行此操作,在旧版本中,您必须传递包含该函数的类或接口。