Expresión lambda: use Jframe para demostrar la simplicidad del código con y sin lambda

Expresión lambda: use Jframe para demostrar la simplicidad del código con y sin lambda

Introducción

En java8 se ha introducido una característica muy importante. Se trata de las expresiones Lambda, que pueden hacer nuestro código más conciso y legible. Permite utilizar funciones como parámetros. Es una idea funcional orientada a la programación. Hasta cierto punto, puede hacer que el código parezca más conciso.
Pero la desventaja es que los programadores de Java generalmente usan el pensamiento orientado a objetos para la programación.En cierto sentido, Lambda no se ajusta a la forma de pensar orientada a objetos.

texto

Use Jfame como ejemplo para demostrar el código cuando el botón JButton escucha eventos, comparando la simplicidad de usar lambda y no usar lambda

package com.moonl.jvm.jframe;


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

public class Jframe extends JFrame {
    
    


    public Jframe() {
    
    
        this.setBounds(400, 400, 450, 450);
        this.setTitle("lambda test");
        this.setVisible(true);
        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

        JPanel jPanel = new JPanel();
        jPanel.setBounds(400,400,0,0);
        this.add(jPanel);
        //
        jPanel.add(_createButton("偷袭", "大意了"));
        jPanel.add(_createButtonLambda("我没有闪", "年轻人不讲武德"));
    }

    /**
     * 按钮控件监听
     * @param name
     * @param msg
     * @return
     */
    public JButton _createButton(String name, String msg) {
    
    

        JButton jb = new JButton(name);
        jb.addActionListener(new ActionListener() {
    
    
            @Override
            public void actionPerformed(ActionEvent e) {
    
    
                System.out.println(msg);
            }
        });
        return jb;
    }

    /**
     * 按钮控件使用lambda监听
     * @param name
     * @param msg
     * @return
     */
    public JButton _createButtonLambda(String name, String msg) {
    
    
        JButton jb = new JButton(name);
        jb.addActionListener(event -> System.out.println(msg));
        return jb;
    }

    public static void main(String[] args) {
    
    
        new Jframe();
    }
}

El código se ha publicado y puede ver que el formato de sintaxis de lambda es mucho más conciso para el código legible.
Ahora echamos un vistazo al efecto de la operación:

El programa se ejecuta
Ahora, hacemos clic en los dos botones por separado,
Salida de efectos
ahora podemos ver que los eventos de escucha de los dos botones han impreso el mensaje que queremos.
El efecto es el mismo.

posdata

Estimados estudiantes que han leído este artículo, en el proceso de desarrollo real, ¿qué método usarían para escribir código?
¿Consideraría intentar usar la sintaxis lambda?

Supongo que te gusta

Origin blog.csdn.net/liaoyue11/article/details/110955671
Recomendado
Clasificación