ArrayLis
¿Que es un arrayList?
ArrayList implementa la lista con
arreglos linkeados, lo que la hace muy eficiente para recorrer pero ineficiente
para insertar o eliminar elementos que se no encuentren en el final.
Sintaxis de un arrayList
Tenemos que tener en cuenta que no nos dejará utilizar variables de datos
primitivos, para poderlo utilizar datos primitivos tenemos que crear una clase
envoltorio.
Constructores:
ArratList()
Cuando utilizamos este constructor
nuestro array se diseña para almacenar 10 elementos, cuando escemos este tamaño
nos deja almacenarlos, pero optimizaremos mal el espacio en memoria ya que cada
vez que excedan 10 elementos creará un espacio en memoria que ira aumentando
dinámicamente.
ArrayList<Tipo_dato_almacenado> Nombrea_ArrayList = new ArrayList
<Tipo_dato_almacenado>();
Métodos :
Add() : incluirá un registro en
nuestro ArrayList
public class EjemploArrayList {
public static void main(String[] args) {
ArrayList<Tipo_dato_almacenado>
Nombrea_ArrayList = new ArrayList
<Tipo_dato_almacenado>();
Nombrea_ArrayList.add(new Tipo_dato_almacenado("xxx",20000,1));
Nombrea_ArrayList.add(new Tipo_dato_almacenado("qq",500,10));
Nombrea_ArrayList.add(new Tipo_dato_almacenado("dd",8000,5));
Nombrea_ArrayList.add(new Tipo_dato_almacenado("rr",989898,2));
Nombrea_ArrayList.add(new Tipo_dato_almacenado("rt",258258,3));
Nombrea_ArrayList.add(new Tipo_dato_almacenado("t",8888888,12));
}
}
class Tipo_dato_almacenado {
String TEXTO;int numero;int numero2;
public Tipo_dato_almacenado(String TEXTO, int numero, int numero2) {
this.TEXTO = TEXTO;this.numero= numero;this.numero2=numero2;
}
}
Iterator(): Recorrea nuestro arrayList
Size(): Nos dice cual es el tamaño de
nuestro ArrayList, cuantos registros contiene.
Nombre_ArrayList.size()
trimToSize():
Si ponemos esta instrucción al final de
nuestro array liberará espacio en memoria.
Nombre_ArrayList.trimToSize();
Set(posición
elemento, elemento): lo utilizaremos
en lugar del add cuando deseemos poner el nuevo registro en una posición
determina de nuestro ArrayList.
Así pondríamos este registro en la posición 1 de nuestro arrayList
Nombre_ArrayList.set(0, new Tipo_dato_almacenado("xxx",20000,1));
Así pondríamos este registro en la posición 5 de nuestro arrayLis.
Nombre_ArrayList.set(4, new Tipo_dato_almacenado("xxx",20000,1));
get(index): Obtener elemento que se encuantra en una
posición determinada.
Nombre_ArrayList.get(5);
ensureCapacity(minCapacity): Le indicamos a nuestro arraylist que capacidad
ha de tener, para evitar que gaste mas recursos de los necesarios.
Nombre_ArrayList.ensureCapacity(Nombre_ArrayList.size());
Iterator(): Recorrea nuestro arrayList. Este método nos
regresará un objeto de tipo iterator que es una interface que tiene java con
unos métodos útiles para recorrer arrayList.
Métodos Interface Iterator
- Hasnext(): Nos indica si tienermo un registro tras el actual.Nos
regresará un boolean.
- Next()
: Nos regresará el siguiente elemento de
la colección.
- Remove():
Eliminará el elemento con que estemos interaccionando en ese momento.
Iterator
<Tipo_dato_almacenado> xxx = Nombre_ArrayList.iterator();
while(xxx.hasNext())
{
System.out.println(xxx.next().EsDAto());
}
Come recorrer un arrayList con un bucle for
public class
EjemploArrayList {
public static void main(String[] args) {
ArrayList<Tipo_dato_almacenado> Nombre_ArrayList = new
ArrayList <Tipo_dato_almacenado>();
Nombre_ArrayList.add(new Tipo_dato_almacenado("xxx",20000,1));
Nombre_ArrayList.add(new Tipo_dato_almacenado("qq",500,10));
Nombre_ArrayList.add(new Tipo_dato_almacenado("dd",8000,5));
Nombre_ArrayList.add(new Tipo_dato_almacenado("rr",989898,2));
Nombre_ArrayList.add(new Tipo_dato_almacenado("rt",258258,3));
Nombre_ArrayList.add(new Tipo_dato_almacenado("t",88888888,12));
Nombre_ArrayList.set(0, new Tipo_dato_almacenado("xxx",20000,1));
for(int i=0;i<Nombre_ArrayList.size();i++) {
System.out.println(Nombre_ArrayList.get(i).EsDAto());
}
}
}
class Tipo_dato_almacenado {
String TEXTO;
int numero;
int numero2;
public Tipo_dato_almacenado(String TEXTO, int numero, int numero2) {
this.TEXTO = TEXTO;this.numero= numero;this.numero2=numero2;
}
public String EsDAto() {
return "El texto es "+ TEXTO+"\n El nuero 1 es "+numero+"\n El numero 2 es
"+numero2;
}
}
Ejmplo ArrayList:
package mis_frames;
import java.util.*;
public class array {
public static void main(String[] args) {
List<String>
i = new ArrayList<String>();
i.add("z");
i.add("x");
i.add("a");
i.add("b");
Iterator<String>
x = i.iterator();
while(x.hasNext()) {
System.out.println(x.next());
}
}
}
Si lo queremos recorrer con un ForEach
for(Tipo_dato_almacenado z:Nombre_ArrayList) {
System.out.println(z.EsDAto());
}
Utilizando Iterator:
Iterator
<Tipo_dato_almacenado> xxx = Nombre_ArrayList.iterator();
while(xxx.hasNext())
{
System.out.println(xxx.next().EsDAto());
}
No hay comentarios:
Publicar un comentario