Red de conocimiento informático - Aprendizaje de programación - Expresión Java para expresión Lambda

Expresión Java para expresión Lambda

Un punto destacado de Java 8 es la introducción de expresiones Lambda, que harán que el código diseñado con él sea más conciso. Cuando los desarrolladores escriben expresiones Lambda, también se compilarán en una interfaz funcional. El siguiente ejemplo utiliza la sintaxis Lambda para reemplazar clases internas anónimas. El código no solo es conciso, sino también legible.

El método antiguo sin usar Lambda: button.addActionListener(new?ActionListener(){public?void?actionPerformed(ActionEvent?ae){System.out.println(Actiondetected);}});Usar Lambda : button.addActionListener(()->{System.out.println(Actiondetected);}); veamos un ejemplo más obvio.

El método antiguo sin Lambda: Runnable?runnable1=new?Runnable(){@Overridepublic?void?run(){System.out.println(Running withoutLambda);}}; =()->{System.out.println(RunningfromLambda);};Como puede ver, el uso de expresiones Lambda no solo hace que el código sea más simple, sino también legible y, lo más importante, también se reduce mucho la cantidad de código. de. Sin embargo, hasta cierto punto, estas características ya se utilizan ampliamente en lenguajes JVM como Scala.

No sorprende que la comunidad de Scala sea increíble porque muchas de las cosas en Java 8 parecen sacadas de Scala. En cierto modo, la sintaxis de Java 8 es más detallada que la de Scala pero no muy clara, pero eso no significa mucho, si pudiera, probablemente construiría expresiones Lambda como lo hace Scala.

Por un lado, si Java continúa desarrollándose alrededor de Lambda e implementando funciones que Scala ya ha implementado, entonces Scala puede no ser necesario. Por otro lado, si solo proporciona algunas funciones básicas, como ayuda con clases internas anónimas, Scala y otros lenguajes seguirán prosperando y potencialmente superarán a Java. De hecho, este es el mejor resultado. Sólo con competencia se pueden lograr avances. Otros idiomas seguirán desarrollándose y creciendo, y no hay necesidad de preocuparse por si quedarán obsoletos.