Colecciones Java
Colecciones Java
1
Colecciones (Collection)
• Arquitectura unificada (o framework) que nos
permite emplear distintas estructuras de datos con
el fin de almacenar y recuperar objetos
independientemente de la clase a la cual
pertenezcan.
– Coleccion <Clase> nombre=new Coleccion<Clase>();
Un ejemplo sería:
– List<String> unaLista = new ArrayList<String>();
2
Colecciones (Collection)
3
Colecciones (Collection)
4
Colecciones (Collection)
• Agrupan objetos donde cada elemento
posee un significado similar.
• El valor depende de la posición.Se
pueden definir recorridos
• Se puede operar sobre un elemento
particular, elementos elegidos mediante
un filtro o sobre la colección completa
• Tienen diferentes interfaces,
funcionalidades y eficiencias.
5
Colecciones (Collection)
6
Colecciones (Collection)
7
Colecciones (Collection)
Collection Map
LinkedHashMap
ArrayList LinkedList
HashSet TreeSet
LinkedHashSet
8
Métodos de la Interface Collection (Set
y List)
public interface Collection {
// Operaciones basicas
int size();
boolean isEmpty();
boolean contains(Object elemento);
Iterator iterator();
boolean add(Object element);
boolean remove(Object element);
}
9
Métodos de la Interface Collection (Set
y List)
public interface Collection {
// Operaciones completas
boolean containsAll(Collection<?> c);
boolean addAll(Collection <?> c);
boolean removeAll(Collection <?> c);
boolean retainAll(Collection <?> c);
void clear();
}
10
Métodos de la Interface Map
11
Colecciones. Arraylist
12
Colecciones. LinkedList
13
Colecciones (Collection). Comparaciones
• Interfaces de Apoyo:
public interface Comparable{
public int compareTo (Object o)
}
public interface Comparator{
public int compare(Object o1, Object o2);
public boolean equals(Object o1, Object o2);
14
Colecciones (Collection). Iteradores
15
Colecciones (Collection). Iteradores
16
Colecciones (Collection). Iteradores
• Se puede pensar en un Iterator como un
cursor ubicado entre los elementos de la
colección el cual permite iterar sólo hacia
adelante.
hasNext() next()
true
hasNext()
false
iterator
17
Ejemplos implementados en Java
A continuación se presentan
ejemplos del uso de las
colecciones: LinkedList, ArrayList,
Set y Map.
18
Colecciones. Ejemplo: LinkedList
19
Colecciones. Ejemplo: LinkedList
Librería que debe estar presente en
todos los programas donde sea
necesario emplear una Colección
20
Colecciones. Ejemplo: LinkedList
21
Colecciones. Ejemplo: LinkedList
22
Colecciones. Ejemplo: LinkedList
23
Colecciones. Ejemplo: LinkedList
24
Colecciones. Ejemplo: LinkedList
Resultado de la corrida:
25
Colecciones. Ejemplo: ArrayList
Se tiene la clase persona:
26
Colecciones. Ejemplo: ArrayList
Main:
27
Colecciones. Ejemplo: ArrayList
En el Main si aplicamos el método p1.imprime(lista,p1)
obtendríamos la siguiente salida:
28
Colecciones. Ejemplo: ArrayList
Para ordenar la lista se utilizará la interfaz Comparator:
Por cédula:
Por nombre:
29
Colecciones. Ejemplo: ArrayList
En el Main tendríamos lo siguiente:
30
Colecciones. Ejemplo: ArrayList
Obteniendo como resultado:
31
Colecciones. Ejemplo: Set
Tenemos el siguiente Main:
32
Colecciones. Ejemplo: Set
Y la clase ClaseSet con los métodos invocados en el main:
33
Colecciones. Ejemplo: Set
Se obtiene como resultado:
34
Colecciones. Ejemplo: Map
Tenemos el siguiente Main:
35
Colecciones. Ejemplo: Map
Y la clase ClaseMap:
36
Colecciones. Ejemplo: Map
Y la clase ClaseMap:
37
Colecciones. Ejemplo: Map
El resultado de la corrida sería:
38