Вы находитесь на странице: 1из 6

La clase ArrayList (java.util) es una objeto que acta como una lista que implemente la interfaz Collection de java.

Esta clase permite contener y ordenar objetos, incluso, puede almacenar objetos duplicados. Su tamao es dinmico, es decir, esta lista crecer a medida que se inserten en ella mas elementos. Debememos recordar que el ndice de un ArrayList empieza en 0 (cero), es decir, el primer elemento del ArrayList tiene como ndice el 0.

Agregar elementos
El ArrayList contendr diversos elementos que debemos gestionar, para agregar elementos se puede hacer de dos formas usando el mtodo add() que recibe por parmetro un objeto cualquiera: La primera forma sera insertndolo sin darle una posicin especfica, entonces, el elemento ser agregado al final:
1 // instanciamos un nuevo ArrayList 2 ArrayList mi_lista = new ArrayList(); 3 4 // agregamos el elemento, por defecto lo agregar de ltimo 5 // si la lista est vaca ser el primer elemento 6 mi_lista.add("elemento 1");

La segunda forma sera dndole una posicin especfica en la lista. Si por alguna razn el vamos a insertar el elemento es una posicin donde ya existe un elemento, ste elemento ser desplazado a la derecha (junto con todos los dems que estn tambin a la derecha) para darle campo al elemento que ser insertado en dicho ndice:
// instanciamos un nuevo ArrayList 2 ArrayList mi_lista = new ArrayList(); 3 4 // agregamos el elemento, por defecto lo agregar de ltimo 5 mi_lista.add(1, "elemento A");

Eliminar elementos
Para eliminar elementos se dispone del mtodo remove() en el cual recibe como argumento el objeto a eliminar o bien, eliminar el elemento conociendo su ndice (posicin). Para este ejemplo supongamos que tenemos una clase Persona, que tiene nombre y edad, insertaremos unas cuantas personas en la lista y luego eliminaremos una de ellas usando las dos formas.

Eliminado segn su ndice en la lista


1 Persona persona_1 = new Persona("Julian", 20); 2 Persona persona_2 = new Persona("Bety", 17); 3 Persona persona_3 = new Persona("Marta", 22); 4 5 ArrayList mi_lista = new ArrayList(); 6 7 // agregamos unos cuantos elementos 8 mi_lista.add(persona_1); 9 mi_lista.add(persona_2); 10 11 12 13 // si queremos eliminar a "Betty" por su ndice seria asi: 14 mi_lista.remove(1) // el 1 pertenece al ndice o posicion de Betty en la lista mi_lista.add(persona_3); // la estructura de a lista ha quedado asi: 0 = [Julian] 1 = [Bety] 2 = [Marta]

15 // la estructura de a lista ha quedado asi: 0 = [Julian] 1 = [Marta]

Marta ha pasado a la posicin 1, ya que la lista forza a correr todos los elemenetos a al izquieda para que ocupe ese espacion eliminado, entonces el tamao de la lista se reduce a 2 elementos nicamente.

Eliminado segn el objeto como argumento


La otra forma sera si le enviamos el objeto para que la lista lo identifique. Aclaro, ingresar un nuevo elemento con los mismos datos no significa que sea le mismo elemento, para que deba ser igual deber tener la misma instancia y/o la misma posicin en memoria
view source print?

1 Persona persona_1 = new Persona("Julian", 20); 2 Persona persona_2 = new Persona("Bety", 17); 3 Persona persona_3 = new Persona("Marta", 22); 4 5 ArrayList mi_lista = new ArrayList(); 6 7 // agregamos unos cuantos elementos 8 mi_lista.add(persona_1); 9 mi_lista.add(persona_2); 10 11 12 13 // si queremos eliminar a "Julian" debemos "enviarle a Juan" de nuevo 14 mi_lista.remove(persona_1) // se envia la instancia de Juan 15 // la estructura de a lista ha quedado asi: 0 = [bety] 1 = [Marta] mi_lista.add(persona_3); // la estructura de a lista ha quedado asi: 0 = [Julian] 1 = [Bety] 2 = [Marta]

Otras funciones importantes


Tamao
Para determinar la cantidad de elementos de la lista solo se llama al metodo size()
1 int total = mi_lista.size();

Vaciar
Para vaciar la lista y dejarla sin ningn elemento en ella se usa el mtodo clear()
1 mi_lista.clear();

Si un objeto ya existe en la lista


Para saber si un objeto sta insertado en lista usamos el mtodo contains(), el cual devuelve true si existe o un false si sucede lo contrario
1 boolean existencia = mi_lista.contains(elObjetoBuscado);

Si est vaca
Para saber si la lista esta vaca, es decir, si no tiene elementos usamos isEmpty() que devuelve true si NO hay elementos o un false si contiene algun elemento.
1 boolean vacia = mi_lista.isEmpty();

Convertir a un arreglo
Para pasar o copiar los elementos a un arreglo de objetos (TipoObjeto objetos []) se usa el mtodo toArray()
1 Object objetos [] = mi_lista.toArray();

El ndice de un objeto
El uso del IndexOf(Object o) retorna la posicin de un elemento que est en el array.
1 Persona a = new Persona ("Juan"); 2 mi_lista.add(a); 3 Persona b = new Persona ("Marta"); 4 mi_lista.add(b); 5 Persona c = new Persona ("Andrea"); 6 mi_lista.add(c); 7 8 //retorna 2 9 int indice = mi_lista.indexOf(b);

Combinar dos ArrayList en uno


La funcin addAll(Collection c) se encarga de anexar un arraylist a otra ya creado. Pero tambin se puede aplicar a otro tipo de listas que implementen la interfaz Collection.
1 ArrayList otra_lista = new ArrayList(); 2 Persona d = new Persona ("Carlos"); 3 otra_lista.add(d); 4 Persona e = new Persona ("Samuel"); 5 otra_lista.add(e); 6 7 mi_lista.addAll( otra_lista );

Iteradores
Otra cosa m uy im portante a la hora d e trabajar con los ArrayList son los Iterad ores . Los Iterad ores sirven para recorrer los ArrayList y pod er trabajar con ellos. Los Iterad ores solo tienen tres m tod os que son : hasN ext(). para com probar que siguen qu ed and o elem entos en el iterad or. next() para que nos d e el siguiente elem ento d el iterad or. remove() que sirve para elim inar el elemento d el iterad or.

Ejem plo:

// Declaracin el ArrayList ArrayList<String> nombreArrayList = new ArrayList<String>(); // Aadimos 10 Elementos en el ArrayList for (int i=1; i<=10; i++){ nombreArrayList.add("Elemento "+i); } // Aadimos un nuevo elemento al ArrayList en la posicin 2 nombreArrayList.add(2, "Elemento 3"); // Declaramos el Iterador e imprimimos los Elementos del ArrayList Iterator<String> nombreIterator = nombreArrayList.iterator(); while(nombreIterator.hasNext()){ String elemento = nombreIterator.next(); System.out.print(elemento+" / "); }

Вам также может понравиться

  • Base de Datos Oracle 11g-Entonacion de Base de Datos (D50317)
    Base de Datos Oracle 11g-Entonacion de Base de Datos (D50317)
    Документ6 страниц
    Base de Datos Oracle 11g-Entonacion de Base de Datos (D50317)
    Joshua Zeuqsalev
    Оценок пока нет
  • Ejemplos de ArrayList en Java
    Ejemplos de ArrayList en Java
    Документ6 страниц
    Ejemplos de ArrayList en Java
    Diverse Informática
    Оценок пока нет
  • La Clase ArrayList
    La Clase ArrayList
    Документ3 страницы
    La Clase ArrayList
    Daniel Arroyo
    Оценок пока нет
  • Array List Java
    Array List Java
    Документ20 страниц
    Array List Java
    Jose Leon Rodriguez Piña
    100% (1)
  • Apunte C# Colecciones
    Apunte C# Colecciones
    Документ9 страниц
    Apunte C# Colecciones
    maxi
    Оценок пока нет
  • Listas en Java
    Listas en Java
    Документ4 страницы
    Listas en Java
    Joyas Mar Pau
    Оценок пока нет
  • Array List
    Array List
    Документ5 страниц
    Array List
    Jose Antonio Rendon Vargas
    Оценок пока нет
  • Linked List
    Linked List
    Документ10 страниц
    Linked List
    edux360
    0% (1)
  • Array List
    Array List
    Документ2 страницы
    Array List
    briang
    Оценок пока нет
  • Uso de Arreglos Dinámicos
    Uso de Arreglos Dinámicos
    Документ2 страницы
    Uso de Arreglos Dinámicos
    luis pero no tomlinson en youtube
    Оценок пока нет
  • Capitulo Ii
    Capitulo Ii
    Документ9 страниц
    Capitulo Ii
    Galo Chuquimia
    Оценок пока нет
  • LINKEDLIST - AbstractSet
    LINKEDLIST - AbstractSet
    Документ6 страниц
    LINKEDLIST - AbstractSet
    Ronald Ganan
    Оценок пока нет
  • Lista C#
    Lista C#
    Документ7 страниц
    Lista C#
    Eric Francisco Garcia Garcia
    Оценок пока нет
  • Clase 3 - Vectores y Matrices
    Clase 3 - Vectores y Matrices
    Документ14 страниц
    Clase 3 - Vectores y Matrices
    Andrea Sinche
    Оценок пока нет
  • El Uso de Listas en Java
    El Uso de Listas en Java
    Документ5 страниц
    El Uso de Listas en Java
    Alejandra Contreras
    Оценок пока нет
  • Python Docs
    Python Docs
    Документ4 страницы
    Python Docs
    Miguel Perdomo
    Оценок пока нет
  • ArrayList en JAVA (Completo)
    ArrayList en JAVA (Completo)
    Документ11 страниц
    ArrayList en JAVA (Completo)
    megea75
    Оценок пока нет
  • Arrays en Java
    Arrays en Java
    Документ12 страниц
    Arrays en Java
    7522120009 YASIR DAVID GARCIA PEÑA ESTUDIANTE ACTIVO
    Оценок пока нет
  • ABIERTAS
    ABIERTAS
    Документ4 страницы
    ABIERTAS
    JORGE DANIEL RAMÍREZ ALANOCA
    Оценок пока нет
  • C1M5 - Estructuras de Datos
    C1M5 - Estructuras de Datos
    Документ28 страниц
    C1M5 - Estructuras de Datos
    Amanda Escalona
    Оценок пока нет
  • 11 Colecciones
    11 Colecciones
    Документ30 страниц
    11 Colecciones
    Juliana Palma
    Оценок пока нет
  • POO Colecciones
    POO Colecciones
    Документ44 страницы
    POO Colecciones
    Javier Prudencio
    Оценок пока нет
  • 4 Guía Colecciones
    4 Guía Colecciones
    Документ21 страница
    4 Guía Colecciones
    luis lop
    Оценок пока нет
  • Listasss
    Listasss
    Документ5 страниц
    Listasss
    MTW FF
    Оценок пока нет
  • Array List
    Array List
    Документ17 страниц
    Array List
    jagneia
    Оценок пока нет
  • Metodos ArrayList - Programacion
    Metodos ArrayList - Programacion
    Документ2 страницы
    Metodos ArrayList - Programacion
    Ana Alarcon
    Оценок пока нет
  • TPROG1-U1-Colecciones de Datos
    TPROG1-U1-Colecciones de Datos
    Документ8 страниц
    TPROG1-U1-Colecciones de Datos
    EMY CUP
    Оценок пока нет
  • Aprende C Sharp - Colecciones - List, ArrayList
    Aprende C Sharp - Colecciones - List, ArrayList
    Документ17 страниц
    Aprende C Sharp - Colecciones - List, ArrayList
    Renee Gonzalez
    Оценок пока нет
  • 2 Guia Estructura de Datos Juliana y Santiago
    2 Guia Estructura de Datos Juliana y Santiago
    Документ8 страниц
    2 Guia Estructura de Datos Juliana y Santiago
    Jotas Villalobos
    Оценок пока нет
  • Java 16
    Java 16
    Документ35 страниц
    Java 16
    Rocio Soriano
    Оценок пока нет
  • Arreglo S
    Arreglo S
    Документ17 страниц
    Arreglo S
    edwin pulido
    Оценок пока нет
  • 7 - Guía Colecciones 2020
    7 - Guía Colecciones 2020
    Документ12 страниц
    7 - Guía Colecciones 2020
    Ute Procon Laugero
    100% (1)
  • Arrays
    Arrays
    Документ46 страниц
    Arrays
    rosveron
    50% (2)
  • Autolisp Lección 9 - Estructuras de Datos
    Autolisp Lección 9 - Estructuras de Datos
    Документ9 страниц
    Autolisp Lección 9 - Estructuras de Datos
    Jose Belito Belito Mancha
    Оценок пока нет
  • Listas Enlazadas
    Listas Enlazadas
    Документ9 страниц
    Listas Enlazadas
    emmauel.esva1
    Оценок пока нет
  • Laboratorio Nro. 03
    Laboratorio Nro. 03
    Документ13 страниц
    Laboratorio Nro. 03
    Jordy Huamán Lozano
    Оценок пока нет
  • Listas en Python
    Listas en Python
    Документ9 страниц
    Listas en Python
    sofia flores
    Оценок пока нет
  • Listas Enlazadas
    Listas Enlazadas
    Документ10 страниц
    Listas Enlazadas
    Rosa Jimenez
    Оценок пока нет
  • Modulo 2 - Ejercicio 2
    Modulo 2 - Ejercicio 2
    Документ3 страницы
    Modulo 2 - Ejercicio 2
    Facu Coronel
    Оценок пока нет
  • Listas (Arreglos o Vectores)
    Listas (Arreglos o Vectores)
    Документ8 страниц
    Listas (Arreglos o Vectores)
    Leonel Palominos
    Оценок пока нет
  • Variables - Tipos de Datos en Python
    Variables - Tipos de Datos en Python
    Документ44 страницы
    Variables - Tipos de Datos en Python
    misbuenosamigos
    Оценок пока нет
  • Array List
    Array List
    Документ4 страницы
    Array List
    Byron Lema
    Оценок пока нет
  • Colecciones 2
    Colecciones 2
    Документ22 страницы
    Colecciones 2
    Luis Figueroa
    Оценок пока нет
  • Apunte 5
    Apunte 5
    Документ16 страниц
    Apunte 5
    Juan Cruz Juncos
    Оценок пока нет
  • 11 Colecciones
    11 Colecciones
    Документ30 страниц
    11 Colecciones
    andres leonardo pinto cristancho
    Оценок пока нет
  • Listas y Tuplas
    Listas y Tuplas
    Документ3 страницы
    Listas y Tuplas
    yatsen quispe reyes
    Оценок пока нет
  • Listas en Java 17-01-2023
    Listas en Java 17-01-2023
    Документ70 страниц
    Listas en Java 17-01-2023
    GabrielPailamilla
    Оценок пока нет
  • Lectura - 13 - Colecciones y API (Parte I)
    Lectura - 13 - Colecciones y API (Parte I)
    Документ32 страницы
    Lectura - 13 - Colecciones y API (Parte I)
    juanmarencopadilla
    Оценок пока нет
  • Metodos de Listas Python
    Metodos de Listas Python
    Документ9 страниц
    Metodos de Listas Python
    Samuel
    Оценок пока нет
  • Algoritmos Y Estructuras de Datos: Alineación Curricular Del Material de Estudio
    Algoritmos Y Estructuras de Datos: Alineación Curricular Del Material de Estudio
    Документ6 страниц
    Algoritmos Y Estructuras de Datos: Alineación Curricular Del Material de Estudio
    victor.bustamante.aliste
    Оценок пока нет
  • Java ArrayList
    Java ArrayList
    Документ10 страниц
    Java ArrayList
    Juan Carlos Rivera Ramirez
    Оценок пока нет
  • Estructuras Dinamicas Lineales en Java
    Estructuras Dinamicas Lineales en Java
    Документ48 страниц
    Estructuras Dinamicas Lineales en Java
    EduardoXuyá
    Оценок пока нет
  • ArrayList en Java
    ArrayList en Java
    Документ20 страниц
    ArrayList en Java
    Daniela Vargas
    Оценок пока нет
  • JS - Clase 06
    JS - Clase 06
    Документ16 страниц
    JS - Clase 06
    Diego
    Оценок пока нет
  • Estructuras de Datos
    Estructuras de Datos
    Документ50 страниц
    Estructuras de Datos
    Luis Mercado
    Оценок пока нет
  • ArrayList en Java
    ArrayList en Java
    Документ7 страниц
    ArrayList en Java
    Mr Choko
    Оценок пока нет
  • Resumen Listas Arreglos y Colecciones
    Resumen Listas Arreglos y Colecciones
    Документ7 страниц
    Resumen Listas Arreglos y Colecciones
    Carlos Edwin Rodriguez Cuevas
    Оценок пока нет
  • Prin-Cipi - To
    Prin-Cipi - To
    Документ7 страниц
    Prin-Cipi - To
    Jos T
    Оценок пока нет
  • Clase04 - Estructura - Datos - 2022II
    Clase04 - Estructura - Datos - 2022II
    Документ43 страницы
    Clase04 - Estructura - Datos - 2022II
    Gabriel Bardales
    Оценок пока нет
  • Funciones Matemáticas
    Funciones Matemáticas
    От Everand
    Funciones Matemáticas
    Оценок пока нет
  • Windows 7 Total v2
    Windows 7 Total v2
    Документ5 страниц
    Windows 7 Total v2
    Jeza Sanchez
    Оценок пока нет
  • HAcking
    HAcking
    Документ96 страниц
    HAcking
    Juan Francisco Carcamo Vilchez
    Оценок пока нет
  • S08. Construcción de GUI
    S08. Construcción de GUI
    Документ54 страницы
    S08. Construcción de GUI
    Edward Martin Julca Sánchez
    Оценок пока нет
  • Ejercicio Complejo de RSA NO Examen
    Ejercicio Complejo de RSA NO Examen
    Документ3 страницы
    Ejercicio Complejo de RSA NO Examen
    lina
    Оценок пока нет
  • Factory Talk View Conexión Con El PLC
    Factory Talk View Conexión Con El PLC
    Документ2 страницы
    Factory Talk View Conexión Con El PLC
    Geordan Gamboa
    Оценок пока нет
  • Raptor 1 1
    Raptor 1 1
    Документ36 страниц
    Raptor 1 1
    Joseph Zavaleta
    Оценок пока нет
  • Juego de Instrucciones 8086-8088
    Juego de Instrucciones 8086-8088
    Документ17 страниц
    Juego de Instrucciones 8086-8088
    Fernando Mamani Rojas
    Оценок пока нет
  • Taller 4 - Centos 7
    Taller 4 - Centos 7
    Документ13 страниц
    Taller 4 - Centos 7
    Luis Bardales
    Оценок пока нет
  • Unidad 2 Sistemas Distribuidos
    Unidad 2 Sistemas Distribuidos
    Документ16 страниц
    Unidad 2 Sistemas Distribuidos
    Eduardo González Maza
    Оценок пока нет
  • Determinación de Rutas
    Determinación de Rutas
    Документ4 страницы
    Determinación de Rutas
    Jennifer Tomalá Gonzaléz
    Оценок пока нет
  • Auditoria Informatica
    Auditoria Informatica
    Документ23 страницы
    Auditoria Informatica
    Luis Dario Gimenez
    Оценок пока нет
  • Computadores
    Computadores
    Документ23 страницы
    Computadores
    Karen Cortes
    Оценок пока нет
  • Metodo de Transporte. Investigacion de Operaciones
    Metodo de Transporte. Investigacion de Operaciones
    Документ41 страница
    Metodo de Transporte. Investigacion de Operaciones
    Anonymous Tn6eOKbjsD
    Оценок пока нет
  • Variables Artificiales
    Variables Artificiales
    Документ19 страниц
    Variables Artificiales
    David Sánchez
    0% (1)
  • Graficos en JSP
    Graficos en JSP
    Документ6 страниц
    Graficos en JSP
    Alberto Moreno
    100% (4)
  • Des Arrollo Ex Amen
    Des Arrollo Ex Amen
    Документ1 страница
    Des Arrollo Ex Amen
    oscarin696
    Оценок пока нет
  • Guia Basica de PROLOG INES
    Guia Basica de PROLOG INES
    Документ10 страниц
    Guia Basica de PROLOG INES
    Alex Montalvo
    Оценок пока нет
  • 4ta Practica Calificada Trillo
    4ta Practica Calificada Trillo
    Документ5 страниц
    4ta Practica Calificada Trillo
    TrilloMartinezJesus
    Оценок пока нет
  • Cuadro Comparativo
    Cuadro Comparativo
    Документ4 страницы
    Cuadro Comparativo
    Oscar Navi
    Оценок пока нет
  • Material Teórico
    Material Teórico
    Документ60 страниц
    Material Teórico
    Pabla Andrea Ceballos Neira
    Оценок пока нет
  • El Protocolo EGP
    El Protocolo EGP
    Документ3 страницы
    El Protocolo EGP
    Dario Jimenez
    Оценок пока нет
  • DAW2 Desarrollo Web en Entorno Cliente 2014-15
    DAW2 Desarrollo Web en Entorno Cliente 2014-15
    Документ18 страниц
    DAW2 Desarrollo Web en Entorno Cliente 2014-15
    Alicia Martín Hernández
    Оценок пока нет
  • Manual Estructuras de Datos en Delphi
    Manual Estructuras de Datos en Delphi
    Документ7 страниц
    Manual Estructuras de Datos en Delphi
    Mariano Lnx
    Оценок пока нет
  • Panfleto Hacking VF PDF
    Panfleto Hacking VF PDF
    Документ2 страницы
    Panfleto Hacking VF PDF
    Kevin Otarola
    Оценок пока нет
  • Estructura y Organización de Un Procesador (CPU) .
    Estructura y Organización de Un Procesador (CPU) .
    Документ12 страниц
    Estructura y Organización de Un Procesador (CPU) .
    joza
    Оценок пока нет
  • Practica 1
    Practica 1
    Документ6 страниц
    Practica 1
    Germán Díaz
    Оценок пока нет
  • Manual de Usuario de Owncloud
    Manual de Usuario de Owncloud
    Документ28 страниц
    Manual de Usuario de Owncloud
    Gustavo Gomez
    Оценок пока нет
  • Ejercicios de Programacion Lineal Resueltos Mediante El Metodo Simplex
    Ejercicios de Programacion Lineal Resueltos Mediante El Metodo Simplex
    Документ8 страниц
    Ejercicios de Programacion Lineal Resueltos Mediante El Metodo Simplex
    Beatriz DC Rincon
    100% (1)
  • Lista de Cotejo
    Lista de Cotejo
    Документ1 страница
    Lista de Cotejo
    Henri Rivas
    Оценок пока нет