Java 8將采用與C#語言一樣的Lambda句法

openkk 13年前發布 | 18K 次閱讀 Java

鑒于Java 7 正式版已經發布,甲骨文和Java社區進程組織(JCP)的成員們已開始仔細考慮為這種編程語言的下一個版本Java SE 8添加什么功能特性。前段時間曝光將為Java 8提上議程的工作是:設計面向云計算的Java。近日又有提出了對Java 8語法上的改變:Java 8 將采用跟C#一樣的Lambda句法。

相關負責人稱:我們決定Java 8 將采用跟C#一樣的Lambda句法,當然我們會做一些細微的改變。

C#的語法是:

    lambda = ArgList Arrow Body  
       ArgList = Identifier  
                 | "(" Identifier [ "," Identifier ]* ")" 
                 | "(" Type Identifier [ "," Type Identifier ]* ")" 
       Body = Expression  
                 | "{" [ Statement ";" ]+ "}" 
這里是使用lambda表達式這種語法的一些例子:
    x => x + 1  
       (x) => x + 1  
       (int x) => x + 1  
       (int x, int y) => x + y  
       (x, y) => x + y  
       (x, y) => { System.out.printf("%d + %d = %d%n", x, y, x+y); }  
       () => { System.out.println("I am a Runnable"); } 
轉自:http://developer.51cto.com/art/201109/290372.htm
參考原文: http://mail.openjdk.java.net/pipermail/lambda-dev/2011-September/003936.html

 本文由用戶 openkk 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!