Skip to Content
Recetas Java modernas
book

Recetas Java modernas

by Ken Kousen
October 2024
Intermediate to advanced content levelIntermediate to advanced
322 pages
7h 7m
Spanish
O'Reilly Media, Inc.
Book available
Content preview from Recetas Java modernas

Apéndice A. Genéricos y Java 8

Antecedentes

Las capacidades genéricas se añadieron en Java hace mucho tiempo, en la versión J2SE 1.5, pero la mayoría de los desarrolladores Java sólo aprendieron lo mínimo que necesitaban saber sobre ellas para hacer su trabajo. Con la llegada de Java 8, de repente los Javadocs están llenos de firmas de métodos como ésta de java.util.Map.Entry:

static <K extends Comparable<? super K>,V> Comparator<Map.Entry<K,V>>
    comparingByKey()

o éste de java.util.Comparator:

static <T,U extends Comparable<? super U>> Comparator<T> comparing(
    Function<? super T,? extends U> keyExtractor)

o incluso este monstruo de java.util.stream.Collectors:

static <T,K,D,A,M extends Map<K, D>> Collector<T,?,M> groupingBy(
    Function<? super T,? extends K> classifier, Supplier<M> mapFactory,
    Collector<? super T,A,D> downstream)

Entender lo mínimo ya no va a ser suficiente. El objetivo de este apéndice es ayudarte a desglosar firmas similares en partes comprensibles para que puedas utilizar la API de forma productiva.

Lo que todo el mundo sabe

Cuando quieras utilizar una colección como List o Set, declara el tipo de los elementos contenidos colocando su nombre de clase entre corchetes angulares:

List<String> strings = new ArrayList<String>();
Set<Employee> employees = new HashSet<Employee>();
Nota

Java 7 facilitó un poco la sintaxis introduciendo el operador diamante que se utiliza en los siguientes ejemplos de código. Como la referencia del lado izquierdo declara la colección ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Sistemas reactivos en Java

Sistemas reactivos en Java

Clement Escoffier, Ken Finnigan
SRE con Microservicios Java

SRE con Microservicios Java

Jonathan Schneider
Java nativo en la nube

Java nativo en la nube

Josh Long, Kenny Bastani

Publisher Resources

ISBN: 9798341602205