Nuevo en Java 7, Diamantes
Dec 23
Desde la llegada de los Generics en el año 2004 con la versión 5 de Java, utilizar las colecciones ha evitado la conversión de tipos tan utilizada en versiones anteriores, pero la declaracion de estas mismas colecciones parece redundante, ejemplo :
ArrayList<String> lista = new ArrayList<String>(); TreeMap<String,ArrayList<String>> tabla = new TreeMap<String,ArrayList<String>>();
En el ejemplo anterior estamos declarando una lista de cadenas y en el segundo un mapa que contiene una llave cadena y que mapea a una lista de cadenas. El uso de Generics siempre ha creado construcciones del lenguaje muy extrañas, a veces poco entendibles para los que apenas comienzan con la programación en Java.
La versión 7 del lenguaje de programación Java no mejora la declaración de instancias usando generics si no que evita duplicar de nuevo la definición del tipo al utilizar el diamante "<>" para especificar que se infieren los tipos utilizados en la declaración :
ArrayList<String> lista = new ArrayList<>(); TreeMap<String,ArrayList<String>> tabla = new TreeMap<>();
De esta forma se evita repetir la declaración de los tipos de nuevo, esta inferencia tambien se presenta de otras formas pero esta es la mas usual.
Enlaces :
- Mejorando la Inferencia de Tipos para la creación de Instancias con Generics
http://mail.openjdk.java.net/pipermail/coin-dev/2009-February/000009.html
No hay entradas relacionadas.

