Principais Métodos da Classe ArrayList

21/07/2022 21:54

Michele Monteiro

Michele Monteiro

Brasil

Uma formada em Engenharia de Produção se descobrindo e se apaixonando pelo mundo da programação.

  • O Java ArrayList, é, basicamente, um array dinâmico que encontramos no java.util — um pacote que contém uma grande variedade de recursos, como estruturas de coleções, modelos de data e hora, recursos para internacionalização, entre muitos outras facilidades para o desenvolvimento de aplicações em Java. Esses arrays redimensionáveis são muito úteis quando utilizados para implementações em que precisamos manipular listas.
  • A dinamicidade do recurso possibilita à pessoa desenvolvedora a criação de coleções — arrays, classes e objetos — sem precisar se preocupar com o redimensionamento dos vetores. Caso algum haja necessidade de uma posição adicional em um array, o ArrayList realiza a operação de maneira autônoma. Fonte: (https://blog.betrybe.com/java/arraylist-java/#5)

Modelos de ArrayLists Imutáveis

List<Double> notas1 = Arrays.asList(7d, 8.5, 9.3, 5d, 7d, 0d, 3.6); 
List<Double> notas2 = List.of(7d, 8.5, 9.3, 5d, 7d, 0d, 3.6);

Uma das Formas de Iniciar um ArrayList

List<Double> notas3 = new ArrayList<>(); 
notas3.add(7.0); 
notas3.add(8.5); 
notas3.add(9.3); 
notas3.add(5d); 
notas3.add(7d); 
notas3.add(0d); 
notas3.add(3.6);

Como Exibir a Posição de um Elemento

System.out.println("Exiba a posição da nota 5.0: " + notas3.indexOf(5d));
No código acima vemos que quando queremos exibir uma posição específica do ArrayList, é utilizado o método indexOf() . Dentro desse método é passado como parâmetro o valor do elemento que está na posição que desejo identificar, e com isso ele retornará um int, que é a posição.

Adicionar um valor em uma posição já existente

System.out.println("Adicione na lista a nota 8.0 na posição 4: ");
notas3.add(4, 8d);
No método add() serão passados 2 parâmetros, a posição desejável e o valor que será adicionado nela add(posição, valor do elemento).

Substituir o valor de um elemento

System.out.println("Substitua a nota 5.0 pela nota 6.0");
notas3.set(notas3.indexOf(5d), 6.0);
Neste caso será utilizado o método set() e dentro dele será passado como parâmetro o método indexOf() e o novo valor desejado. Pelo indexOf() será possível acessar a posição do elemento com o valor antigo e fazer a troca para o novo valor através do set().

Conferir se algum valor está na lista

System.out.println("Confira se a nota 5.0 está na lista: " + notas3.contains(5d));

Exibir todos os elementos na ordem em que foram informados

  • No ArrayList ele já vai imprimir automaticamente na ordem em que os elementos foram adicionados.
  • Para imprimir o ArrayList linha a linha, pode ser utilizado o forEach():
for (Double nota : notas3) System.out.println(nota);
Para cada nota (do tipo Double) do meu ArrayList chamado “notas3”, imprima em cada linha ela mesma(nota).

Iterator

A Classe Double implementa uma interface Comparable e é ela que faz a comparação e me diz quem é o menor número da minha lista, o maior, quem vem primeiro, quem vem depois. Tanto o Double, Integer, String, Long, todos eles implementam a interface Comparable.

Fazer a soma dos elementos de dentro da minha lista (Iterator)

Para que eu possa fazer a soma dos elementos de dentro da minha lista, preciso chamar o método iterator e ir iterando dentro da minha list.
  • Como criar uma variável do padrão iterator:
notas3.iterator();

//***ctrl + alt + v***

Iterator<Double> iterator = notas3.iterator();
//SOMA DOS VALORES
    Iterator<Double> iterator = notas3.iterator();
    Double soma = 0d;
    while (iterator.hasNext()){
        Double next = iterator.next();
        soma += next;
    }
	   System.out.println("Exiba a soma dos valores: " + soma);

Depois eu fiz um laço while() com a condição iterator.hasNext() que quer dizer “iterator, tem o próximo elemento na lista?” se tiver, ele vai entrar na sentença while(), vai pegar o elemento da lista (seguindo a ordem), vai colocar esse elemento dentro da variável next e vai somar ela com a variável soma que começou com 0. Vai seguir fazendo isso até que o iterator.hasNext() seja false.

Média dos elementos do meu ArrayList (Iterator)

System.out.println("Exiba a média das notas: " + (soma/notas3.size()));
Após fazer a soma dos elementos do meu ArrayList usando o iterator, também é possível tirar a média dos mesmos.
size(): vai me retornar um int (inteiro) que significa a quantidade de elementos que eu tenho dentro do meu list.

Remoções

Remoção dos elementos de acordo com uma lógica (Iterator)

System.out.println("Remova as notas menores que 7 e exiba a lista: ");
Iterator<Double> iterator1 = notas3.iterator();
while (iterator1.hasNext()){
    Double next = iterator1.next();
    if (next < 7) iterator1.remove();
}
System.out.println(notas3);
“Enquanto tiver próximo elemento, eu vou pegar meu próximo elemento, vou colocá-lo na variável next e dizer: se meu próximo elemento for menor que 7, eu quero que ele seja removido da minha lista.”

Remoção do elemento da lista

System.out.println("Remova a nota 0: ");
notas3.remove(0d);
System.out.println(notas3);

Remoção do elemento de uma posição específica da lista

System.out.println("Remova o elemento da posição 0: ");
notas3.remove(0);
System.out.println(notas3);

Apagar toda a lista

System.out.println("Apague toda a lista");
notas3.clear();
System.out.println(notas3);

isEmpty()

  • É um booleam, por exemplo, se a lista de notas3 estiver vazia, ele voltará um true, se não, voltará um false.
System.out.println("Confira se sua lista está vazia: " + notas3.isEmpty());

Espero ter ajudado!

Lembrando que só conseguiremos realmente entender com bastante prática. Bons estudos!!

Faça parte da nossa comunidade!

Domine as tecnologias utilizadas pelas empresas mais inovadoras do mundo e encare seu novo desafio profissional, evoluindo em comunidade com os melhores experts.

0

Certificado

Artigo relacionado

Comentários

    Nenhum comentário