java8 新特性 lanmbda表达式初体验

java8 新特性中加入了lanmbda表达式,写个小程序体验一下

package com.jvm.test1;
 
import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
 
public class LanmbdaTest extends JFrame {
 
    private JButton jButton;
 
    public LanmbdaTest() {
        this.setBounds(300, 300, 300, 300);
        this.setTitle("玩一玩lanmbda");
 
        jButton = new JButton("点我");
 
        //通常我们的写法
        jButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                System.out.println("略略略");
            }
        });
 
        //使用Lanmbda表达式写
        jButton.addActionListener(event -> System.out.println("Lanmbda say hello"));
 
        this.add(jButton);
 
        this.setVisible(true);
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
 
    }
 
    public static void main(String[] args) {
 
        new LanmbdaTest();
    }
 
}

使用方法一:内部类的写法

方法二:lanmbda表达式的写法

 可以看出来,使用lanmbda表达式实现起来,代码会简洁很多

原文地址:https://www.cnblogs.com/penglu/p/12869204.html