2016-01-20 47 views

回答

1

在java中8,你可以使用方法引用或lambda

functionCaller(this::functionToBeCalled); 

functionCaller(() -> functionToBeCalled()); 
+0

谢谢,最后一个简单的方法。当我能够做到时,我会将其标记为答案。 – Device

+1

请注意,如果您处于静态环境中,则“this :: functionToBeCalled'将不起作用。 – Tunaki

+0

@Tunaki在这种情况下,你需要知道这个类,例如'MyClass :: functionToBeCalled' –

0

我不知道我非常理解你的问题,但有效的,你可以在另一个函数的参数中调用一个函数。

你可以这样做(我想你目前的语言是Java):

// if write(...) and getValue() are static method of Writer class 
Writer.write(getValue()); 

// if write(...) and getValue() can just be used by instanciate an object 
Writer writer = new Writer(); 
String val = writer.getValue(); 
writer.write(val); 

有基本的Java编程课。 谢谢

+0

OP正在寻找的模式是传入要调用的函数但不先调用的功能。 –