ArrayList
ArrayList em Java
A classe ArrayList é um array redimensionável, que pode ser encontrado
no pacote [Link].
A diferença entre um array-vector embutido e um ArrayList em Java é
que o tamanho de um array não pode ser modificado (se quiser adicionar ou
remover elementos de/para um array, tem que criar um novo). Enquanto
elementos podem ser adicionados e removidos de um ArrayList quando
quiser. A sintaxe também é um pouco diferente:
Exemplo
Crie um ArrayList objeto chamado cars que armazenará strings:
import [Link]; // importar a classe ArrayList
ArrayList<String> cars = new ArrayList<String>(); //Crear um Objecto do
ArrayList
Adicionar itens
A ArrayListclasse tem muitos métodos úteis. Por exemplo, para adicionar
elementos à lista, use o método add():
Exemplo
import [Link];
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<>();
[Link]("Volvo");
[Link]("BMW");
[Link]("Ford");
[Link]("Mazda");
[Link](cars); [Volvo, BMW, Ford, Mazda,]
}
}
Você também pode adicionar um item em uma posição específica
consultando o número do índice:
Exemplo
import [Link];
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
[Link]("Volvo");
[Link]("BMW");
[Link]("Ford");
[Link](0, "Mazda"); // Insere o element no inicio da lista (0)
[Link](cars); [Mazda, Volvo, BMW, Ford]
}
}
Acessar um item
Para acessar um elemento no ArrayList, use o método get()e consulte o
número do índice:
Exemplo
[Link](0);
import [Link];
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
[Link]("Volvo");
[Link]("BMW");
[Link]("Ford");
[Link]("Mazda");
[Link]([Link](0)); Volvo
}
}
Alterar um item
Para modificar um elemento, use o método set()e consulte o número do
índice:
Exemplo
[Link](0, "Opel");
import [Link];
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
[Link]("Volvo");
[Link]("BMW");
[Link]("Ford");
[Link]("Mazda");
[Link](0, "Opel");
[Link](cars); [Opel, BMW, Ford, Mazda]
}
}
Remover um item
Para remover um elemento, use o método remove()e consulte o número do
índice:
Exemplo
[Link](0);
import [Link];
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
[Link]("Volvo");
[Link]("BMW");
[Link]("Ford");
[Link]("Mazda");
[Link](0);//remover item na posicao 0
[Link](cars); [BMW, Ford, Mazda]
}
}
Para remover todos os elementos do ArrayList, use o método clear():
Exemplo
[Link]();
import [Link];
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
[Link]("Volvo");
[Link]("BMW");
[Link]("Ford");
[Link]("Mazda");
[Link]();//Para remover todos os elementos do ArrayList
[Link](cars); []
}
}
Tamanho da ArrayList
Para descobrir quantos elementos um ArrayList tem, use o método size():
Exemplo
[Link]();
import [Link];
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
[Link]("Volvo");
[Link]("BMW");
[Link]("Ford");
[Link]("Mazda");
[Link]([Link]()); // 4
}
}
Loop através de um ArrayList
Percorra os elementos de ArrayList um loop for e use o método
size()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>();
[Link]("Volvo");
[Link]("BMW");
[Link]("Ford");
[Link]("Mazda");
for (int i = 0; i < [Link](); i++) {
[Link]([Link](i));
}
}
}
Volvo
BMW
Ford
Mazda
Você também pode fazer um loop ArrayList com o loop for-ach :
Exemplo
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
[Link]("Volvo");
[Link]("BMW");
[Link]("Ford");
[Link]("Mazda");
for (String i : cars) {// for-ach
[Link](i);
}
}
}
Outros tipos
Elementos em um ArrayList são, na verdade, objetos. Nos exemplos acima,
criamos elementos (objetos) do tipo "String". Lembre-se de 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: Boolean para boolean, Characterpara char, Double
para double, etc:
Exemplo
Crie um ArrayList para armazenar números (adicione elementos do
tipo Integer):
import [Link];
public class Main {
public static void main(String[] args) {
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
[Link](10);
[Link](15);
[Link](20);
[Link](25);
for (int i = 0; i < [Link](); i++){//(int i : myNumbers)
[Link](i);//[Link] para for-ach
[Link]([Link](i));
}
}
}
10
15
20
25
Classificar uma ArrayList
Outra classe útil no pacote [Link] é a classe Collections, que inclui
o método sort()para classificar listas em ordem alfabética ou numérica:
Exemplo
Classificar uma ArrayList de Strings:
import [Link];
import [Link]; // Import the Collections class
public class Main {
public static void main(String[] args) {
ArrayList<String> cars = new ArrayList<String>();
[Link]("Volvo");
[Link]("BMW");
[Link]("Ford");
[Link]("Mazda");
[Link](cars); // Sort cars
for (String i : cars) {
[Link](i);
}
}
}
BMW
Ford
Mazda
Volvo
Exemplo
Classificar uma ArrayList de Inteiros:
import [Link];
import [Link]; // Import the Collections class
public class Main {
public static void main(String[] args) {
ArrayList<Integer> myNumbers = new ArrayList<Integer>();
[Link](33);
[Link](15);
[Link](20);
[Link](34);
[Link](8);
[Link](12);
[Link](myNumbers); // Sort myNumbers
for (int i : myNumbers) {
[Link](i);
}
}
}
8
12
15
20
33
34
Criar uma Array - Vector
import [Link];
public class CriarVector{
public static void main(String[] args) {
Scanner ler = new Scanner([Link]);
// Definir o tamanho do array
[Link]("Digite o tamanho do array: ");
int tamanho = [Link]();
// Criar o array
int[] arrayInteiros = new int[tamanho];
// Preencher o array com números inteiros
[Link]("Digite " + tamanho + " numeros inteiros:");
for (int i = 0; i < tamanho; i++) {
[Link]("Numero " + (i + 1) + ": ");
arrayInteiros[i] = [Link]();
}
// Exibir o array
for (int i = 0; i < tamanho; i++) {
[Link](arrayInteiros[i]);
}
[Link]();
}
}
Criar um ArrayList
import [Link];
import [Link];
public class ExemploArrayList {
public static void main(String[] args) {
// Criação da ArrayList para armazenar inteiros
ArrayList<Integer> numeros = new ArrayList<>();
Scanner ler = new Scanner([Link]);
// Solicitar ao usuário que informe 5 valores
[Link]("Informe 5 valores inteiros:");
for (int i = 0; i < 5; i++) {
[Link]("Valor " + (i + 1) + ": ");
int valor = [Link]();
[Link](valor); // Adiciona o valor à ArrayList
}
// Imprimir os valores individualmente
[Link]("Os valores informados são:");
for (int i = 0; i < 5; i++) {//(int numero : numeros)
[Link](numeros);
}
// Fechar o scanner
[Link]();
}
}