2011-12-29 74 views
-2

我想知道是否有可能關閉調用函數的參數,或者如果它在某種語言下可能以不同的名稱工作。謝謝。閉合關閉調用函數的參數嗎?

+1

-1哇!多麼令人驚訝的可憐的問題來自你的名聲......我以爲你現在已經學會了如何[問一個好問題](http://stackoverflow.com/help/how-to-ask) 。 – Sheridan 2014-03-24 12:14:53

回答

1

Java對lambda函數的方式是匿名的嵌套/內部類:

interface SomeInterface{ 
    public void SomeMethod(); 
} 

class A{ 
    public static SomeInterface f(final int somearg){ 
     return new SomeInterface(){ 
      public void SomeMethod(){ 
       System.out.println(somearg); 
      } 
     }; 
    } 
} 

public class Test { 

    public static void main(String[] args) { 
     A.f(2).SomeMethod(); 
    } 

} 

A.f(2).SomeMethod();打印2.注意最後的關鍵字。

的Lua可以做同樣的事情:

upper=function(arg) 
      print(arg+2) 
      local inner=function() 
       print(arg) 
      end 
      inner() 
     end 
upper(1) 

此打印

3 
1