Java ArrayList


Java ArrayList

A classe é um arrayArrayList redimensionável , que pode ser encontrado no pacote.java.util

A diferença entre um array embutido e um ArrayListem Java, é que o tamanho de um array não pode ser modificado (se você quiser adicionar ou remover elementos de/para um array, você tem que criar um novo). Enquanto os elementos podem ser adicionados e removidos de um ArrayListsempre que você quiser. A sintaxe também é um pouco diferente:

Exemplo

Crie um ArrayListobjeto chamado cars que armazenará strings:

import java.util.ArrayList; // import the ArrayList class

ArrayList<String> cars = new ArrayList<String>(); // Create an ArrayList object

Se você não sabe o que é um pacote, leia nosso Tutorial de Pacotes Java .


Adicionar itens

A ArrayListclasse tem muitos métodos úteis. Por exemplo, para adicionar elementos ao ArrayList, use o add()método:

Exemplo

import java.util.ArrayList;

public class Main {
  public static void main(String[] args) {
    ArrayList<String> cars = new ArrayList<String>();
    cars.add("Volvo");
    cars.add("BMW");
    cars.add("Ford");
    cars.add("Mazda");
    System.out.println(cars);
  }
}


Acessar um item

Para acessar um elemento no ArrayList, use o get()método e consulte o número do índice:

Exemplo

cars.get(0);

Lembre-se: os índices de matriz começam com 0: [0] é o primeiro elemento. [1] é o segundo elemento, etc.



Alterar um item

Para modificar um elemento, use o set()método e consulte o número do índice:

Exemplo

cars.set(0, "Opel");


Remover um item

Para remover um elemento, use o remove()método e consulte o número do índice:

Exemplo

cars.remove(0);

Para remover todos os elementos no ArrayList, use o clear()método:

Exemplo

cars.clear();


Tamanho da lista de matrizes

Para descobrir quantos elementos um ArrayList possui, use o sizemétodo:

Exemplo

cars.size();


Percorrer um ArrayList

Faça um loop pelos elementos de um ArrayListcom um forloop e use o size()método para especificar quantas vezes o loop deve ser executado:

Exemplo

public class Main {
  public static void main(String[] args) {
    ArrayList<String> cars = new ArrayList<String>();
    cars.add("Volvo");
    cars.add("BMW");
    cars.add("Ford");
    cars.add("Mazda");
    for (int i = 0; i < cars.size(); i++) {
      System.out.println(cars.get(i));
    }
  }
}

Você também pode percorrer um ArrayListcom o loop for-each :

Exemplo

public class Main {
  public static void main(String[] args) {
    ArrayList<String> cars = new ArrayList<String>();
    cars.add("Volvo");
    cars.add("BMW");
    cars.add("Ford");
    cars.add("Mazda");
    for (String i : cars) {
      System.out.println(i);
    }
  }
}


Outros tipos

Elementos em um ArrayList são na verdade objetos. Nos exemplos acima, criamos elementos (objetos) do tipo "String". Lembre-se que uma String em Java é um objeto (não um tipo primitivo). Para usar outros tipos, como int, você deve especificar uma classe wrapper equivalente : Integer. Para outros tipos primitivos, use: Booleanfor boolean, Characterfor char, Doublefor double, etc:

Exemplo

Crie um ArrayListpara armazenar números (adicione elementos do tipo Integer):

import java.util.ArrayList;

public class Main {
  public static void main(String[] args) {
    ArrayList<Integer> myNumbers = new ArrayList<Integer>();
    myNumbers.add(10);
    myNumbers.add(15);
    myNumbers.add(20);
    myNumbers.add(25);
    for (int i : myNumbers) {
      System.out.println(i);
    }
  }
}


Ordenar um ArrayList

Outra classe útil no java.utilpacote é a Collectionsclasse, que inclui o sort()método para classificar listas alfabeticamente ou numericamente:

Exemplo

Classifique um ArrayList de Strings:

import java.util.ArrayList;
import java.util.Collections;  // Import the Collections class

public class Main {
  public static void main(String[] args) {
    ArrayList<String> cars = new ArrayList<String>();
    cars.add("Volvo");
    cars.add("BMW");
    cars.add("Ford");
    cars.add("Mazda");
    Collections.sort(cars);  // Sort cars
    for (String i : cars) {
      System.out.println(i);
    }
  }
}

Exemplo

Classifique um ArrayList de Integers:

import java.util.ArrayList;
import java.util.Collections;  // Import the Collections class

public class Main {
  public static void main(String[] args) {
    ArrayList<Integer> myNumbers = new ArrayList<Integer>();
    myNumbers.add(33);
    myNumbers.add(15);
    myNumbers.add(20);
    myNumbers.add(34);
    myNumbers.add(8);
    myNumbers.add(12);

    Collections.sort(myNumbers);  // Sort myNumbers

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