Java 8 Lambda
Lambda (Intro)
Pablo Rodríguez
Visión General
Aplicación de Lambdas a los problemas diarios
Conversión de clases anónimas a expresiones Lambda
Aplicación del API Streams pararesolver problemas de
ordenamiento, identificación del mayor y menor, y reducir
duplicados
Determinación de cuándo aplicar Lambdas (y cuando no)
Utilización de Collectors
Mejora delrendimiento con parallel streams
Depuración de expresiones Lambda
Descripción del Curso
Lambda provee una manera simple de pasar funcionalidad como un
argumento de otro método, tales como, quéacción realizar cuando
alguien presiona un botón, o cómo ordenar un conjunto de nombres.
Lambda expressions hace posible realizar esto, tratar funcionalidad
como argumento de un método, o código comodato.
Tenemos muchos problemas aquí:
Problemas al obtener un Date
System.out.println(new Date(12, 12,
12));
Sun
Jan 12 00:00:00 PYT
1913
Tenemos muchos problemas aquí:
¿Cuál de los parámetros“12” es para cuál de los atributos de la
fecha?
El mes 12 es Diciembre, no Enero. ¿Correcto?
El año 12 es el año 12 de la Era Actual o Cristiana, no? Incorrecto:
Es 1913
Esperen… Hay unahora en un date?
Aún más, hay un timezone
Una implementación pobre
Conceptualmente, un instante. No una fecha
Las propiedades de un date tienen offsets aleatorios
Algunos sonzero-based, tales como month y hours
Algunos son one-based, tales como day of the month
La propiedad year tiene un offset de 1900
Son mutable, no thread-safe
No internacionalizable
Granularidad de milisegundos
No refleja UTC (Tiempo Universal Coordinado, Hora Local)
Revisión del Ejemplo
System.out.println(new GregorianCalendar(12, 12,
12));java.util.GregorianCalendar[time=?,areFieldsSet=false,areAllFieldsSet=false,le
nient=true,zone=sun.util.calendar.ZoneInfo[id="America/Asuncion",offset=14400000,dstSavings=3600000,useDaylight=true,transitions=129,lastRule=java.uti...
Regístrate para leer el documento completo.