JavaDabbaDoo.org -Tu comunidad Java parlante Utilidades
Inicio | Cursos infosintesis.net liberados | Java SE | Las Colecciones
Las Colecciones

Paso 5: Operativa genéricos List

Primero vamos a ver el funcionamiento habitual de una colección sin la utilización de genéricos y seguidamente veremos el mismo ejemplo utilizando genéricos.

Ausencia de Genéricos

Vamos a crear la Clase ContinentesSinGenericos que va a contener el siguiente código

package paqcolecciones;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ContinentesSinGenericos {
 List listaContinente;

 public ContinentesSinGenericos() {
  crearArrayList();
  añadirElementosFinalColeccion();
  recorrerElementosIterator();
 }

 public void crearArrayList(){
  listaContinente = new ArrayList();
 }

 public void añadirElementosFinalColeccion(){
  listaContinente.add("Europa");
  listaContinente.add("Asia");
  listaContinente.add("Oceania");
 }

 public void recorrerElementosIterator(){
  for (Iterator i = listaContinente.iterator(); i.hasNext();){
   String strContinente = (String) i.next();
   System.out.print(strContinente + " ");
  }
 }

 public static void main(String[] args) {
  new ContinentesSinGenericos();
 }
}

Fijémonos como el asistente de NetBeans nos indica que el método next() nos devuelve un objeto de tipo Object. Por tanto nos vemos obligados a realizar un casting para pasar este objeto de tipo Object a un objeto de tipo String

NetBeans 6 - Método iterator.next() retorna  un objeto de tipo Object

Utilización de Genéricos

Vamos a crear la Clase ContinentesConGenericos que va a contener el siguiente código

package paqcolecciones;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class ContinentesConGenericos {
 List<String> listaContinente;

 public ContinentesConGenericos() {
  crearArrayList();
  añadirElementosFinalColeccion();
  recorrerElementosIterator();
 }

 public void crearArrayList(){
  listaContinente = new ArrayList<String>();
 }

 public void añadirElementosFinalColeccion(){
  listaContinente.add("Europa");
  listaContinente.add("Asia");
  listaContinente.add("Oceania");
 }

 public void recorrerElementosIterator(){
  for (Iterator<String> i = listaContinente.iterator(); i.hasNext();){
   String strContinente = i.next();
   System.out.print(strContinente + " ");
  }
 }

 public static void main(String[] args) {
  new ContinentesSinGenericos();
 }
}

Fijémonos como el asistente de NetBeans nos indica que el método next() nos devuelve un objeto de tipo String. Por tanto no nos vemos obligados a realizar un casting para pasar este objeto de tipo String a un objeto de tipo String

NetBeans 6 - Método iterator.next() retorna  un objeto de tipo String gracias a la utilización de genéricos

Página anterior
Ignasi Pérez Valls
Infosintesis Solutions Group


Abril 2009
Dudas y comentarios: Foro [1-06] Utilidades
 
 
 
 
JavaDabbaDoo.org
Tu comunidad Java parlante. Cursos abiertos, tutoriales y mucho mucho más ...