RSS

Resumen Interfaz Set y clases implementadoras

09 Jun

En este diagrama os dejo las clases que deberéis conocer sobre la interfaz Set, los métodos más usados y algunas anotaciones.

También algunos ejemplos para que comprobéis sus características.

1. Ejemplo HashSet

import java.util.*;
public class EjemploHashSet {

    public static void main (String[] args)
    {
        HashSet<String> s1 = new HashSet <String>();
        s1.add("Hola");
        s1.add("Hola amigo");
        s1.add("Encantado de conocerte");
        s1.add("Se me hace tarde");
        s1.add("Espero verte pronto");
        s1.add("Adios");

        s1.add("Adios"); //Intentamos añadir un duplicado.

        System.out.println("Numero de elementos: " + s1.size() + "\n");

        Iterator i = s1.iterator();
        while (i.hasNext()){
            System.out.println(i.next());
        }
    }
}

2. Ejemplo LinkedHashSet

import java.util.*;
public class EjemploLinkedHashSet {

    public static void main (String[] args)
    {
        LinkedHashSet<String> s2 = new LinkedHashSet <String>();
        s2.add("Hola");
        s2.add("Hola amigo");
        s2.add("Encantado de conocerte");
        s2.add("Se me hace tarde");
        s2.add("Espero verte pronto");
        s2.add("Adios");

        s2.add("Adios"); //Intentamos añadir un duplicado.

        System.out.println("Numero de elementos: " + s2.size() + "\n");

        Iterator i = s2.iterator();
        while (i.hasNext()){
            System.out.println(i.next());
        }
    }
}


3. Ejemplo TreeSet

import java.util.*;
public class EjemploTreeSet {

    public static void main (String[] args)
    {
        TreeSet<String> s3 = new TreeSet<String>();
        s3.add("Hola");
        s3.add("Hola amigo");
        s3.add("Encantado de conocerte");
        s3.add("Se me hace tarde");
        s3.add("Espero verte pronto");
        s3.add("Adios");
        s3.add("Adios"); //Intentamos añadir un duplicado.

        System.out.println("Numero de elementos: " + s3.size() + "\n");

        Iterator i = s3.iterator();
        while (i.hasNext()){
            System.out.println(i.next());
        }

        System.out.println ("\nlower(\"Encantado de conocerte\"): "
        + s3.lower("Encantado de conocerte"));
        System.out.println("floor(\"Encantado de conocerte\"): "
        + s3.floor("Encantado de conocerte"));
        System.out.println("higher(\"Encantado de conocerte\"): "
        + s3.higher("Encantado de conocerte"));
        System.out.println("ceiling(\"Encantado de conocerte\"): "
        + s3.ceiling("Encantado de conocerte"));

        // Devolvemos el set en orden descendente
        NavigableSet<String> reverse =   s3.descendingSet();

        //Lo mostramos
        Iterator r1 = reverse.iterator();
        while (r1.hasNext()){
            System.out.println(r1.next());
        }

        //Hacemos un pollFirst y pollLast
        //Devuelve y elimina el primer elemento
        System.out.println("\nreverse.pollFirst: " + reverse.pollFirst());
        //Devuelve y elimina el ultimo elemento
        System.out.println("reverse.pollLast: " + reverse.pollLast() + "\n");

        //Vemos cómo queda el set
        Iterator r2 = reverse.iterator();
        while (r2.hasNext()){
            System.out.println(r2.next());
        }

    }
}

Anuncios
 
4 comentarios

Publicado por en 9 junio, 2012 en Resumenes

 

Etiquetas: , , , , ,

4 Respuestas a “Resumen Interfaz Set y clases implementadoras

  1. Rafael

    15 octubre, 2015 at 6:29 pm

    Hola, saludos; en referencia al diagrama en la descripción de LinkedHashSet, que significa Bienlazable?

     
  2. Virginia Lopez

    16 julio, 2012 at 11:27 am

    Hola de nuevo!! Tú entra cuando quieras, faltaría más 🙂

    Pues te comento, estos diagramas los hice con StarUML, se puede bajar en http://staruml.softonic.com/, también ví hace tiempo otro programa http://argouml.tigris.org/, pero éste no lo he probado.

    Y el otro blog es éste: http://apuntesbasededatos.wordpress.com/ aunque tiene poquitas entradas y ya lo tengo un poco abandonado porque iba poniendo cosillas que hacía en el trabajo.

    Un saludo y encantada de verte otra vez por aqui!!

     
    • everydayonethought

      16 julio, 2012 at 7:57 pm

      Ok los voy a revisar, gracias.

       
  3. everydayonethought

    15 julio, 2012 at 6:58 am

    ¡Hola Vicky!

    Paso a tu casa de wordpress limpiándome los pies en la entrada de tu puerta para no dejarte todo sucio.

    Quería preguntarte:

    ¿Los diagramas de clases que colocaste en ésta entrada de blog los hiciste con Rational Rose?

    La verdad no recuerdo, pero me pareció que alguna vez comentaste de un software gratis para generar este tipo de diagramas de UML, pero ya busqué en tus archivos de este blog y no encontré nada.

    Creo que tenías otro blog, pero de base de datos, pero se me perdió, ya busqué la dirección en mis archivos de direcciones importantes y favoritos del navegador pero no está.

    Me retiro por hoy no sin antes dejarte saludos cordiales y demás.

     

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

 
A %d blogueros les gusta esto: