首頁>技術>

Lambda表示式是Java SE 8中最重要的新特性。

長期以來,Lambda表示式一直被認為是Java中缺少的特性。

Lambda表示式語法
(引數列表) -> 語句

或者

(引數列表) -> {    語句組}
Lambda表示式簡化程式碼的例子

Lambda表示式也稱為閉包(closures),它可以使某些Java程式碼結構更簡短,更易於閱讀,尤其是在使用內部類時。

closure美 ['kloʊʒər]英 ['kləʊʒə(r)]n.關閉;倒閉;(路或橋的)暫時封閉v.使結束網路閉包;閉合;封閉性

考慮下面的程式碼片段,它使用java.lang.Runnable介面定義一個匿名內部類同時例項化該類:

Runnable runnable = new Runnable() {    @Override    public void run() {        System.out.println("Running...");    }}

使用Lambda表示式可將上述程式碼替換為如下形式:

Runnable runnable = () -> System.out.println("Running...");

換句話說,如果需要將Runnable傳遞給java.util.concurrent.Executor,可以寫成下面這樣:

executor.execute(new Runnable() {    @Override     public void run() {        System.out.println("Running...");    }});

使用如下的Lambda表示式有相同的效果:

executor.execute(() -> System.out.println("Running..."));

這樣的程式碼簡短、親切,同時更清晰,也更具表現力。

4
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • SAP PP使用ECR去修改BOM主資料