bloque4:estructurasdatos
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
bloque4:estructurasdatos [04/03/2018 13:15] – Fernando Valdeón | bloque4:estructurasdatos [05/03/2018 11:39] (actual) – borrado Fernando Valdeón | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
- | ====== Estructuras de datos dinámicas ====== | ||
- | Hasta ahora conocemos los arrays, como la estructura de datos que me permite almacenar una serie de datos del mismo tipo. | ||
- | |||
- | Como hemos visto los arrays tienen un tamaño fíjo, que se indica en el momento de su creación. | ||
- | |||
- | Existen otras estructuras de datos, que funcionan de forma similar a los arrays, pero aumentan su capacidad o la disminuyen dependiendo de la necesidad. Todo esto en tiempo de ejecución. | ||
- | |||
- | Las siguientes clases implementan la interface '' | ||
- | |||
- | ===== Clase ArrayList ===== | ||
- | La clase ArrayList representa una de las estructura de datos más usadas en Java. | ||
- | |||
- | Consiste en un array dinámico al que no hay que definirle un tamaño. Cuando añadimos elementos amplia su tamaño, y cuando los borramos lo reduce. | ||
- | Implementa los métodos de la interfaz [[https:// | ||
- | |||
- | Solo permite guardar objetos, por lo que al guardar un tipo primitivo, se convertirá automáticamente a su objeto envoltorio. | ||
- | |||
- | ==== Instanciar un ArrayList ==== | ||
- | Las colecciones, | ||
- | |||
- | <code java> | ||
- | ArrayList< | ||
- | |||
- | ArrayList< | ||
- | |||
- | ArrayList< | ||
- | </ | ||
- | |||
- | ==== Métodos de ArrayList ==== | ||
- | |||
- | <code java> | ||
- | ArrayList< | ||
- | |||
- | //Añade el elemento al ArrayList | ||
- | lista.add(" | ||
- | |||
- | //Añade el elemento al ArrayList en la posición ' | ||
- | lista.add(n, | ||
- | |||
- | //Devuelve el número de elementos del ArrayList | ||
- | lista.size(); | ||
- | |||
- | //Devuelve el elemento en la posición 2 del ArrayList | ||
- | lista.get(2); | ||
- | |||
- | //Comprueba si existe el elemento (' | ||
- | lista.contains(" | ||
- | |||
- | //Devuelve la posición de la primera ocurrencia (' | ||
- | lista.indexOf(" | ||
- | |||
- | //Devuelve la posición de la última ocurrencia (' | ||
- | lista.lastIndexOf(" | ||
- | |||
- | //Borra el elemento de la posición ' | ||
- | lista.remove(5); | ||
- | |||
- | Borra la primera ocurrencia del " | ||
- | lista.remove(" | ||
- | |||
- | //Borra todos los elementos de ArrayList | ||
- | lista.clear(); | ||
- | |||
- | //Devuelve True si el ArrayList está vacío. | ||
- | lista.isEmpty(); | ||
- | |||
- | //Copiar un ArrayList | ||
- | ArrayList arrayListCopia = (ArrayList) lista.clone(); | ||
- | |||
- | //Pasa el ArrayList a un Array | ||
- | String[] array = lista.toArray(); | ||
- | |||
- | </ | ||
- | |||
- | ==== Recorrer una lista ==== | ||
- | Existen 3 formas principales para recorrer una lista | ||
- | |||
- | === Bucle for=== | ||
- | Podemos recorrer un ArrayList del mismo modo que lo hacemos con un array estático. | ||
- | Para saber su tamaño usamos el método '' | ||
- | Al igual que los arrays, la primera posición de un ArrayList es la posición **0**. | ||
- | |||
- | <code java> | ||
- | ArrayList< | ||
- | |||
- | //Añado 4 elementos seguidos al ArrayList | ||
- | |||
- | listaNombres.add(“Jose”); | ||
- | listaNombres.add(“Marta”); | ||
- | listaNombres.add(“Juan”); | ||
- | listaNombres.add(“Laura”); | ||
- | |||
- | //Recorro el array y muestro los elementos | ||
- | for (int i = 0; i < listaNombre.size(); | ||
- | | ||
- | } | ||
- | </ | ||
- | === Interface Iterator === | ||
- | === Bucle for each=== | ||
- | Conocido como foreach o for mejorado, es úna versión del bucle for, enfocada en recorrer listas, pero sin aumentar o disminuir su tamaño. | ||
- | |||
- | ===== Clase Stack ===== | ||
- | |||
- | ===== Clase LinkedList ===== | ||
bloque4/estructurasdatos.1520169312.txt.gz · Última modificación: 16/09/2024 20:53 (editor externo)