Bienvenidos sean a este post, hoy hablaremos sobre la interfaz que es la base de las colecciones framework la cual declara los metodos nucleo que todas las colecciones usaran, como todas las colecciones implementan esta interfaz, varios de estos metodos lanzan UnsupportedOperationException, debes familiarizarte con los metodos para un mejor entendimiento, pasemos a ver algunos de los metodos disponibles:

  • boolean add(Object o), agrega el objeto informado a la coleccion que lo invoca, devuelve verdadero si se pudo agregar al objeto en la coleccion y devuelve falso si ya existe el objeto y esta no permite tener objetos duplicados
  • boolean addAll(Coleccion c), agrega todos los elementos de la coleccion informada a la coleccion invocadora, devuelve verdadero cuando logra el objetivo de lo contrario retorna falso
  • void clear(), remueve los elementos de la coleccion invocadora
  • boolean contains(Objeto o), devuelve verdadero si el objeto informado es parte de la coleccion invocadora de lo contrario retorna falso
  • boolean containsAll(Coleccion c), devuelve verdadero si la coleccion invocadora contiene todos los elementos de c, de lo contrario retorna falso
  • boolean equals(Objeto o), devuelve verdadero si el objeto informado es igual a la coleccion invocadora, de lo contrario devuelve falso
  • int hashCode(), devuelve el codigo hash de la coleccion invocadora
  • boolean isEmpty(), devuelve verdadero si la coleccion invocadora esta vacia, de lo contrario devuelve falso
  • Iterator iterator(), devuelve un iterator para la coleccion invocadora
  • boolean remove(Object o), remueve una instancia del objeto informado de la coleccion invocadora, si el elemento es removido devuelve verdadero de lo contrario es falso
  • boolean removeAll(Coleccion c), remueve todos los elementos de c de la coleccion invocadora, devuelve verdadero si la coleccion invocadora cambio de lo contrario devuelve falso
  • boolean retainAll(Coleccion c), remueve los elementos de la coleccion invocadora excepto los de la coleccion informada, devuelve verdadero si la coleccion invocadora cambio de lo contrario devuelve falso
  • int size(), devuelve la cantidad de elementos de la coleccion invocadora
  • Object[] toArray(), devuelve un array que contiene todos los elementos almacenado en la coleccion invocadora, este array contiene copias de los elementos de la coleccion
  • Object[] toArray(Object array[]), devuelve un array conteniendo aquellos elementos de la coleccion invocadora que solo coinciden con los tipos del array informado

Con algunos de los metodos disponibles, pasemos a ver un ejemplo donde podemos poner en practica:

CollectionsDemo.java:

import java.util.*;

public class CollectionsDemo
{
        public static void main(String[] args)
        {
                List al = new ArrayList();
                al.add("Martin");
                al.add("Marta");
                al.add("Enzo");
                System.out.println(" Elementos del ArrayList");
                System.out.print("\t" + al);

                List ll = new LinkedList();
                ll.add("Martin");
                ll.add("Marta");
                ll.add("Enzo");
                System.out.println();
                System.out.println(" Elementos de LinkedList");
                System.out.print("\t" + ll);

                Set hs = new HashSet();
                hs.add("Martin");
                hs.add("Marta");
                hs.add("Enzo");
                System.out.println();
                System.out.println(" Elementos del Set");
                System.out.print("\t" + hs );

                Map hm = new HashMap();
                hm.put("Martin", "43");
                hm.put("Marta", "50");
                hm.put("Enzo", "33");
                hm.put("Javier", "44");
                System.out.println();
                System.out.println(" Elementos de Map ");
                System.out.print("\t" + hm + "\n");
        }
}

En este ejemplo crearemos varias colecciones, una de tipo ArrayList, otra de tipo de LinkedList, otra de Set y por ultimo de tipo Map, en todos los casos agregaremos elementos a los mismos, los tres primeros (ArrayList, LinkedList, Set) por medio del metodo add() y el metodo Map por medio de put, en todos los casos primero crearemos el objeto encargado de la coleccion, luego agregaremos los elementos y por ultimo mostraremos la informacion almacenada, compilemos y probemos el programa para ver la siguiente salida:

tinchicus@dbn001vrt:~/programacion/java/codigo$ java CollectionsDemo
Elementos del ArrayList
[Martin, Marta, Enzo]
Elementos de LinkedList
[Martin, Marta, Enzo]
Elementos del Set
[Marta, Martin, Enzo]
Elementos de Map
{Marta=50, Javier=44, Martin=43, Enzo=33}
tinchicus@dbn001vrt:~/programacion/java/codigo$

Como pueden ver cada coleccion se agrego correctamente y al momento de mostrarlo podemos hacerlo perfectamente, tanto para los tipo lista o array como para el mapa.

En resumen, hoy hemos visto que es la interfaz Collection, los metodos que posee, como los podemos utilizar y un ejemplo donde pusimos en practica algunos de ellos, espero les haya sido util sigueme en Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.