UT14. colecciones
el api de java
eugeniaperez.es


UT 14: colecciones

1.Introducción
Text
eugeniaperez.es

Las colecciones se encuentra en java.util.
UT 14: colecciones

1.Introducción
Text
eugeniaperez.es

Estructuras estáticas: arrays
Estructuras dinámicas:
- Vector /ArrayList
- HashSet
- Hashtable

UT 14: colecciones

1.Introducción
Text
eugeniaperez.es

vectores: más versátil y flexible que arrays.
Vector<String> names = new Vector<String>();
.size() / contains(elemento) |
.addElement(elemento)/add(elemento) |
.removeElement(objeto)/remove(elemento) |
.removeElementAt(indíce) |
.removeAllElements() |
Métodos:
UT 14: colecciones

1.Introducción
Text
eugeniaperez.es

vectores:
Vector<Integer> numbers = new Vector<Integer>();
numbers.add(42); // Internamente será new Integer(42)
int value = numbers.elementAt(0);
Entre ángulos especificamos el objeto con el cual trabaja la colección. En caso de ser tipos simples (int, float, double) se convierten a clases envoltorio: Integer, Float, Double...
UT 14: colecciones

1.Introducción
Text
eugeniaperez.es

vectores, recorridos:
Si NO definimos el tipo...
Vector jugadores = new Vector();
Tenemos dos posibilidades para recorrer la colección:
for(int i=0;i<jugadores.size();i++){
Jugador jugador = (Jugador)jugadores.elementAt(i);
System.out.println(jugador.toString());
}
Iterator iterator = jugadores.iterator();
while(iterator.hasNext()){
Jugador jugador = (Jugador)iterator.next();
System.out.println(jugador.toString());
}
UT 14: colecciones

1.Introducción
Text
eugeniaperez.es

vectores, recorridos:
Si conocemos el tipo LO MEJOR es indicarlo...
Vector<Jugador> equipo = new Vector<Jugador>();
El recorrido entonces es mucho más sencillo, se ahorran líneas:
for(Jugador jugador: equipo){
System.out.println(jugador.toString());
}
Obtenemos el jugador directamente, no necesitamos extraerlo de una posición y convertirlo...
UT 14: colecciones

1.Introducción
Text
eugeniaperez.es

hashtable:
Es una estructura especial a la cual accedemos a través de una clave, en lugar de una posición.
Clave | Valor |
---|---|
71650463N | Alumno1 |
09435632C | Alumno2 |
1234567O | Alumno3 |
UT 14: colecciones

1.Introducción
Text
eugeniaperez.es

hashtable:
Hashtable<String, Alumno> alumnos = new Hashtable<String,Alumno>();
alumnos.put(“71650463N”, Alumno2);
Alumno alumno2 = alumnos.get(“71650463N”);
- .size()
- .put(clave, valor)
- .get(clave)
- .containsKey(clave)
- .remove(clave)
- .clear()
MÉTODOS
UT 14: colecciones

1.Introducción
Text
eugeniaperez.es

ARRAYS:
Similares a los Vectores.
MÉTODOS
.size() |
.add(elemento) |
.add(índice, elemento) |
.get(índice) |
.remove(indíce) |
.contains(elemento) |
.size() |
.clear() |
.toArray(type []) |
ArrayList<String> names = new ArrayList<String>();
String [] namesArray = names.toArray(new String[0]);
List<String> otherNames = Arrays.asList(namesArray);
UT 14: colecciones

1.Introducción
Text
eugeniaperez.es

hashsets:
Son listas donde no se pueden repetir los valoress
MÉTODOS
.size() |
.add(elemento) |
.iterator() |
.contains(elemento) |
.remove(clave) |
.clear() |
HashSet<String> uniqueNames = new HashSet<String>();
UT.14 Colecciones
By eugenia_perez
UT.14 Colecciones
- 1,241