Autor Tema: Java. Ejemplo de polimorfismo crear listas de distintos tipos recorrer CU00678B  (Leído 2791 veces)

dferna

  • Sin experiencia
  • *
  • Mensajes: 25
    • Ver Perfil
Hola a todos  :)

Expongo la resolución al ejercicio sobre el polimorfismo CU00678B del curso de iniciación a Java con BlueJ.

Código: [Seleccionar]
package aplicacion;

import java.util.ArrayList;
import java.util.Set;
import java.util.HashSet;
import java.util.TreeSet;
import java.util.Iterator;

public class Principal {

public static void main(String[] args) {
//Creo una lista ArrayList de tipo interfaz Set
ArrayList<Set> lista = new ArrayList<Set>();
//Creo una lista HashSet de tipos String y la relleno
HashSet<String> astros = new HashSet<String>();
astros.add("sol");
astros.add("luna");
astros.add("saturno");
//Creo una lista TreeSet de tipo Integer y la relleno
TreeSet<Integer> numeros = new TreeSet<Integer>();
numeros.add(2);
numeros.add(8);
numeros.add(5);
//Relleno el ArrayList con 2 tipos diferentes, la lista los acepta porque los tipos HashSet y TreeSet implementan la interfaz Set
lista.add(astros);
lista.add(numeros);
//Creo un objeto it de tipo Iterator con objetos de interfaz Set
Iterator<Set> it = lista.iterator();
Set cursor;
//Recorro la lista para acceder a cada posición del iterador
while(it.hasNext()){
cursor = (Set) it.next();
Iterator<Set> it2 = cursor.iterator();

if(cursor instanceof HashSet){
System.out.println("Elementos de HashSet.");
}else{
System.out.println("Elementos del TreeSet.");
}
int i=0;
//Recorro el nuevo iterador y accedo a cada uno de sus elementos
while(it2.hasNext()){
//Imprimo cada valor del ArrayList
System.out.println("El elemento "+(i++)+" contiene el valor: "+it2.next());
}
}
}
}


Salida por pantalla:
Citar
Elementos de HashSet.
El elemento 0 contiene el valor: sol
El elemento 1 contiene el valor: saturno
El elemento 2 contiene el valor: luna
Elementos del TreeSet.
El elemento 0 contiene el valor: 2
El elemento 1 contiene el valor: 5
El elemento 2 contiene el valor: 8
« Última modificación: 30 de Mayo 2017, 21:46 por Alex Rodríguez »

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:Resolución ejercicio Polimorfismo CU00678B
« Respuesta #1 en: 08 de Abril 2017, 18:59 »
Buenas.

Todo correcto en este ejercicio.

Saludos. ;D

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".