POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
[ES] Colecciones y estructura de iteracion
1. Let's Rock Java
Fundamentos de Java Enterprise Edition
con JDeveloper
Eudris Cabrera Rodriguez
Ingeniero Telemático
Senior Software Developer
Skype:eudriscabrera
LinkedIn:http://www.linkedin.com/in/eudriscabrera
Noviembre 2011, Santiago de los Caballeros, R. D.
3. Agenda
● Arreglos
● Colecciones y Clases Genéricas
4. Arreglos
Un arreglo es un objeto contenedor que almacena un número fijo de
valores de un solo tipo. La longitud de un arreglo se establece
cuando se crea el arreglo. Después de la creación, su longitud es fija
.
En Java la sintaxis para declarar un arreglo es la siguiente:
tipodedatos[] nombrevariable;
tipodedatos nombrevariable[];
int [] anArray; // declara un arreglo de números enteros
5. Arreglos
Creación e inicialización de un arreglo:
int [] anArray = new int [10]; // crear un arreglo de enteros
anArray [0] = 100; / / inicializa el primer elemento
anArray [1] = 200; / / inicializa el segundo elemento
anArray [2] = 300; / / etc
Sintaxis abreviada para crear e inicializar una arreglo:
int[] anArray = {100, 200, 300, 400, 500, 600, 700, 800, 900,
1000};
6. Usar el ciclo for con arreglos
La declaración para un for en java es la siguiente:
for (inicializació;terminación; el incremento) {
//declaraciones
}
Para obtener la longitud de un arreglo, usamos la siguiente sintaxis:
arrayName.length
Ejemplo:
1.
int [] anArray = new int [10]
for (int i = 0; anArray.length; i++) {
value[i] = i;
}
7. Usar el ciclo for con arreglos
2.
double[] precios = {14.95,12.95,11.95,9.95};
for (int i = 0; precios.length; i++) {
System.out.println(precios[i]);
}
3.
double total = 0.0;
for (int i = 0; precios.length; i++) {
total += precios[i];
}
9. Usar el ciclo for mejorado con arreglos
El ciclo for mejorado es mucha veces llamado ciclo foreach, porque
es usado para procesar cada elemento en un arreglo o colección.
Sintaxis:
for (type variableName : arrayName) {
//sentencias
}
4.
double[] precios = {14.95,12.95,11.95,9.95};
for (double precio : precions) {
System.out.println(precio);
}
11. Colecciones en Java
Una Collection es todo aquello que se puede recorrer (o “iterar”) y
de lo que se puede saber el tamaño.
Las operaciones básicas de una collection entonces son:
add(T) Añade un elemento.
iterator()
Obtiene un “iterador” que permite recorrer la colección visitando
cada elemento una vez.
size() Obtiene la cantidad de elementos que esta colección
almacena.
contains(t) Pregunta si el elemento t ya está dentro de la colección.
iterator() Obtiene un “iterador” para recorrer la colección.
12. Colecciones en Java
El siguiente ejemplo recorre una colección de Integer borrando
todos los ceros
void borrarCeros(Collection<Integer> ceros)
{
Iterator<Integer> it = ceros.iterator();
while(it.hasNext())
{
int i = it.next();
if(i == 0)
it.remove();
}
}
13. Colecciones en Java
A partir de Java 6 hay una manera simplificada de recorrer una
collection (que sirve si no necesitamos borrar elementos).
void mostrar(Collection<?> col){
for(Object o : col)
System.out.println(o);
}
15. Colecciones en Java
List
Un List, o simplemente lista, es una Collection. La diferencia que
tiene una lista con una Collection es que la lista mantiene un orden
arbitrario de los elementos y permite acceder a los elementos por
orden.
ArrayList
Es una implementación de List, la ventaja de ArrayList sobre un
array común es que es expansible, es decir que crece a medida que
se le añaden elementos (mientras que el tamaño de un array es fijo
desde su creación).
16. Colecciones en Java
Agregar elemento:
ArrayList<String> codes = new ArrayList<String>();
codes.add("mbdk");
codes.add(0,"warp");
Obtener un elemento de un ArrayList:
for(int i=0; i < codes.get(i);i++){
String code = codes.get(i);
System.out.println(code);
}
17. Colecciones en Java
Set
Es una collection, un set agrega una sola restricción: No puede
haber duplicados.
HashSet
Existen varias implementaciones de Set. La más comunmente usada
es HashSet.
Set<String> s = new HashSet<String>();
18. Colecciones en Java
Map
Un Map es un conjunto de valores, con el detalle de que cada
uno de estos valores tiene un objeto extra asociado. A los
primeros se los llama “claves” o “keys”, ya que nos permiten
acceder a los segundos.
Cuando digo que las claves forman un conjunto, lo digo en el
sentido Java: Son un “Set”, no puede haber duplicados.
Sintaxis:
Map<K, V> copy = new HashMap<K, V>();
19. Colecciones en Java
Clases Genéricas:
Las colecciones en Java pueden almacenar cualquier tipo de objeto
(Object). El único problema que podemos encontrar es que si
ponemos un tipo inadecuado, el error nos dará en tiempo de
ejecución.
ArrayList<Integer> milista = new ArrayList<Integer>();
milista.add(0, new Integer(51));
Las clases nativas de Java ahora soportan esta funcionalidad (como
acabamos de ver con las colecciones).
20. Colecciones en Java
Nuestras propias clases genéricas:
import java.util.*;
class Pedido <x extends Object> {
public void set(x param) {
this.actual = param;
}
public x get() {
return actual;
}
private x actual;
}