您可以使用
Runnable对象:
public static void someMethod(boolean flag, Runnable block1, Runnable block2) { //some other pre if(flag) block1.run(); else block2.run(); //some other pre}然后,您可以使用以下命令调用它:
Runnable r1 = new Runnable() { @Override public void run() { . . . }};Runnable r2 = . . .someMethod(flag, r1, r2);编辑(对不起,@ Bohemian):在Java 8中,可以使用lambdas简化调用代码:
someMethod(flag, () -> { }, () -> { });您仍然会
someMethod以相同的方式声明。lambda语法只是简化了如何创建和传递
Runnables。



