Post

Lista de arrays

Lista de arrays

La clase ArrayList es un array redimensionable, que se puede encontrar en el paquete java.util

La diferencia entre una matriz incorporada y una ArrayListen Java, es que el tamaño de una matriz no se puede modificar (si deseas agregar o eliminar elementos a/de una matriz, debes crear una nueva). Si bien se pueden agregar y eliminar elementos de un ArrayList cuando quieras. La sintaxis también es ligeramente diferente:

1
2
3
4
5
6
7
8
9
// Crea un ArrayList objeto llamado coches que almacenará cadenas

import java.ArrayList;

public class main{
  public static void main(String[] args){
    ArrayList<String>.coches = new ArrayList<String>();
  }
}

Agregar elementos

La clase ArrayList tiene muchos métodos útiles. Por ejemplo, para agregar elementos al ArrayList, utilizamos el método add();

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.util.ArrayList;

public class main{
  public static void main(String[] args){
    ArrayList<String>coches = new ArrayList<String>();

    coches.add("Jaguar");
    coches.add("Ford");
    coches.add("BMW");
    coches.add("Porche");
    coches.add("Ferrari");

    System.out.println(coches);
  }
}

Salida:

[Jaguar, Ford, BMW, Porche, Ferrari]

Acceder a un elemento

Para acceder a un elemento en el ArrayList, utilizar get()método

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.util.ArrayList;

public class main{
  public static void main(String[] args){
    ArrayList<String>coches = new ArrayList<String>();

    coches.add("Jaguar");
    coches.add("Ford");
    coches.add("BMW");
    coches.add("Porche");
    coches.add("Ferrari");

    System.out.println(coches.get(0));
  }
}

Salida:

Jaguar

Cambiar un elemento

Para modificar un elemento, utiliza set()

1
coches.set(4, "Mercedes");

Eliminar un elemento

Para eliminar un elemento, utiliza remove()

1
coches.remove(4);

Para eliminar todos los elementos del ArrayList, utiliza clear()

1
coches.clear();

Tamaño de la lista

Para saber cuántos elementos tiene un ArrayList, utiliza size()

1
coches.size();

Recorrer el ArrayList

Para recorrer elementos de un ArrayList podemos utilizar un bucle for

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.util.ArrayList;

public class main{
  public static void main(String[] args){
    ArrayList<String>coches = new ArrayList<String>();

    coches.add("Jaguar");
    coches.add("Ford");
    coches.add("BMW");
    coches.add("Porche");
    coches.add("Ferrari");

    for (int i = 0; i < coches.size(); i ++){
      System.out.println(coches.get(i));
    }
  }
}

También puedes recorrer un ArrayList con el bucle para cada:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.util.ArrayList;

public class main{
  public static void main(String[] args){
    ArrayList<String>coches = new ArrayList<String>();

    coches.add("Jaguar");
    coches.add("Ford");
    coches.add("BMW");
    coches.add("Porche");
    coches.add("Ferrari");

    for (String i : coches) {
      System.out.println(i);
    }
  }
}

Los elementos de un ArrayList son en realidad objetos. En los ejemplos anteriores, hemos creado elementos (objetos) de tipo “String”. Recuerda que un String en Java es un objeto (no un tipo primitivo). Para utilizar otros tipos, como int, debes especificar una clase envolvente equivalente: Integer. Para otros tipos primitivos, utiliza: Boolean para booleanos, Character para caracteres, etc:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.util.ArrayList;

public class main{
  public static void main(String[] args){
    ArrayList<Integer> misNumeros = new ArrayList<Integer>();

    misNumeros.add(10);
    misNumeros.add(9);
    misNumeros.add(30);
    misNumeros.add(16);
    misNumeros.add(71);

    for (int i : misNumeros){
      System.out.println(i);
    }
  }
}

Ordenar una lista de matrices

Otra clase útil en el paquete de java.util es Collectionsclase, que incluye el método sort() para ordenar listas alfabéticamente o numéricamente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import java.util.ArrayList;
import java.util.Collections;

public class main{
  public static void main(String[] args){
    ArrayList<Integer> misNumeros = new ArrayList<Integer>();

    misNumeros.add(10);
    misNumeros.add(9);
    misNumeros.add(30);
    misNumeros.add(16);
    misNumeros.add(71);

    Collections.sort(misNumeros);

    for (int i : misNumeros){
      System.out.println(i);
    }
  }
}
This post is licensed under CC BY 4.0 by the author.