在 Java 中如何在不建立匿名類的情況下實現 lambda 表示式?


lambda 表示式 是一個匿名函式,沒有任何名稱,不屬於任何類,這意味著它是一段可以傳遞以執行的程式碼塊。

語法

(parameter-list) -> {body}

在以下程式中,我們可以在不建立匿名內部類的情況下實現 lambda 表示式。對於按鈕的ActionListener 介面,我們需要重寫一個抽象方法addActionListener() 並使用 lambda 表示式實現程式碼塊。

示例

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class LambdaExpressionButtonTest extends JFrame {
   private JButton btn;
   public LambdaExpressionButtonTest() {
      btn = new JButton("Click on the button");
      // implement ActionListener for JButton using lambda expression
      btn.addActionListener(ae -> JOptionPane.showMessageDialog(null, "Button clicked !!!!"));
      add(btn, BorderLayout.NORTH);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      setSize(400, 300);
      setLocationRelativeTo(null);
      setVisible(true);
   }
   public static void main(String args[]) {
      new LambdaExpressionButtonTest();
   }
}

輸出

更新日期: 2020-07-10

228 次瀏覽

開啟你的 職業生涯

透過完成課程認證

開始
廣告
© . All rights reserved.