Java 8 lamdas

Qué es java 8

Java 8 introdujo una gran cantidad de nuevas características, incluyendo funciones lambda y streams. En este artículo me centraré en estas dos características ya que son las más impactantes que se añadieron en esta nueva versión de Java.

Si alguna vez has tenido que escribir una interfaz gráfica de usuario para una aplicación con un lenguaje OO entenderás el dolor de escribir manejadores de eventos, como un evento de clic del ratón. Se necesita mucho boilerplate porque has tenido que definir una asquerosa clase inline con un único método. Con el lanzamiento de Java 8 se introdujo la función lambda. Esto significa que puedes escribir funciones en línea sin tener que definir una clase. Con el ejemplo del clic del ratón, tendrías que escribir algo así.

Trabajar con listas en Java puede ser a veces un dolor. A diferencia de lenguajes como python, a veces parece que estás escribiendo código verboso cuando utilizas un bucle. Tomemos, por ejemplo, el filtrado de una lista de calificaciones de exámenes basada en ciertos criterios.

ArrayList results = new ArrayList(); for (Grade grade: grades) { if (grade.getScore() > 40 && grade.getSubject() == Subjects.SCIENCE) { results.add(grade.getScore()); } } System.out.println(resultados);

Tutorial de Java 8 lambda

Los tutoriales de Java han sido escritos para el JDK 8. Los ejemplos y las prácticas descritas en esta página no aprovechan las mejoras introducidas en versiones posteriores y pueden utilizar tecnología que ya no está disponible.Consulte los cambios en el lenguaje de Java para obtener un resumen de las características actualizadas del lenguaje en Java SE 9 y las versiones posteriores.Consulte las notas de la versión del JDK para obtener información sobre las nuevas características, las mejoras y las opciones eliminadas o obsoletas de todas las versiones del JDK.

  Activar javascript en mac

Un problema con las clases anónimas es que si la implementación de su clase anónima es muy simple, como una interfaz que contiene sólo un método, entonces la sintaxis de las clases anónimas puede parecer difícil de manejar y poco clara. En estos casos, normalmente se trata de pasar una funcionalidad como argumento a otro método, como por ejemplo, qué acción debe realizarse cuando alguien hace clic en un botón. Las expresiones lambda te permiten hacer esto, tratar la funcionalidad como argumento de un método, o el código como datos.

Esta sección comienza con un enfoque ingenuo de este caso de uso. Mejora este enfoque con clases locales y anónimas, y luego termina con un enfoque eficiente y conciso utilizando expresiones lambda. Encuentra los extractos de código descritos en esta sección en el ejemplo

Java lambda return

Pocas cosas entusiasman más a una comunidad de desarrolladores de software que una nueva versión del lenguaje de programación o plataforma que han elegido. Los desarrolladores de Java no son una excepción. De hecho, es probable que estemos aún más entusiasmados con las nuevas versiones, en parte porque hubo un tiempo no muy lejano en el que pensamos que la suerte de Java -como la de su creador, Sun- estaba en declive. Un roce con la muerte tiende a hacer que uno aprecie aún más la vida renovada. Pero en este caso, nuestro entusiasmo también se debe al hecho de que, a diferencia de la versión anterior, Java 8 tendrá por fin una nueva característica de lenguaje “moderno” que muchos de nosotros hemos estado pidiendo durante años, si no décadas.

  30 cursos gratis que puedes comenzar en noviembre para aprender una nueva habilidad este otoño

Por supuesto, el principal rumor de Java 8 gira en torno a las lambdas (también llamadas cierres), y en eso se centrará esta serie de dos partes. Pero una característica del lenguaje, por sí sola, a menudo parecerá cualquier cosa menos útil o interesante a menos que haya una cierta cantidad de apoyo detrás de ella. Varias características de Java 7 se ajustan a esta descripción: los literales numéricos mejorados, por ejemplo, no podrían hacer que los ojos de la mayoría de la gente se iluminaran.

Tutorial de Java 8

Opis produktu O autorze Richard es un tecnólogo empírico y solucionador de problemas técnicos en profundidad. Ha trabajado profesionalmente en problemas de análisis estático, verificando parte de un compilador y desarrollando tecnología avanzada de detección automática de errores. Más recientemente, su carrera se ha centrado en el análisis de datos para la informática de alto rendimiento. Es uno de los líderes de la Comunidad Java de Londres, forma parte de su Comité JCP y organiza los programas Adopt-a-JSR para Lambdas y Date and Time en Java 8. Richard también es un conocido ponente de conferencias, habiendo hablado en JavaOne, DevoxxUK y JAX London. Obtuvo un doctorado en Ciencias de la Computación en la Universidad de Warwick, donde su investigación se centró en la teoría del compilador.

  Un primer vistazo a las co-rutinas de Kotlin en Android

Llevo bastante tiempo con Java y este libro me ha enseñado buenos ejemplos y muchas cosas sobre las lambdas. Normalmente pensaba que a Java le faltaba algo como el LINQ de C#, pero este libro me enseñó lo contrario.Aunque las lambdas no son la solución para todo, se presentan buenas soluciones para casi todo.Recomendaría este libro para todos los que se consideran “avanzados” en Java. No es para aprender java y para nada más que para alguien que le gusten las lambdas.

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad