Java List: Como usar listas em Java?

Listas em Java são particularmente adequadas a cenários em que o tamanho de um conjunto de dados não é claro desde o princípio ou se o tamanho esperado mudar com o tempo. Nossos exemplos ensinarão você a usar Java lists e apresentarão as operações que você pode realizar com elas.

Para que servem listas em Java?

Listas são uma das estruturas de dados mais fundamentais da programação em Java, podendo ser usadas de diferentes formas. Elas contêm elementos organizados em uma sequência ordenada, que podem ser adicionados, modificados, excluídos e consultados em uma lista. Listas em Java podem conter objetos que pertencem a diferentes classes. Elas também são capazes de armazenar elementos duplicados e nulos. Além disso, Java lists suportam classes e métodos genéricos, garantindo a segurança de tipos.

Listas são bastante usadas em aplicativos de banco de dados para armazenar e acessar grandes conjuntos de dados a partir de consultas. Em interfaces gráficas de usuário (GUI), listas em Java são frequentemente usadas para exibir listas de elementos, como opções em um menu suspenso ou itens de uma loja virtual.

Listas em Java também são indispensáveis em algoritmos e estruturas de dados. Elas são usadas em algoritmos de ordenação, algoritmos de busca e em estruturas de pilha e fila, por exemplo. Em aplicativos de rede, listas podem ajudar a facilitar a gestão de conexões e sockets.

Quais métodos de listas em Java existem?

Listas em Java implementam a interface Collection e devem ser importadas do pacote java.util. Já as classes de implementação podem ser escolhidas com Java ArrayList, LinkedList, Vector e Stack. É possível declarar diferentes instâncias de listas com o seguinte código:

List linkedList = new LinkedList(); // LinkedList
List arrayList = new ArrayList(); // ArrayList
List vecList = new Vector(); // Vector
List stackList = new Stack(); // Stack
Java

Aqui estão alguns dos métodos mais importantes que você pode usar em Java lists:

  1. int size(): Determina o número de elementos em uma lista.
  2. void add(int index, E element): Adiciona um elemento em uma posição específica.
  3. boolean isEmpty(): Verifica se uma lista está vazia.
  4. void clear(): Remove todos os elementos de uma lista.
  5. boolean contains(Object o): Retorna o valor true se o objeto o estiver na lista.
  6. boolean add(E e): Adiciona um elemento ao final de uma lista.
  7. boolean remove(Object o): Remove a primeira ocorrência de um elemento.
  8. E get(int index): Retorna o elemento em um índice especificado.
  9. E set(int index, E element): Substitui ou insere um elemento em um índice especificado.
  10. Object[] toArray(): Retorna um array contendo os elementos de uma lista.
  11. List<E> subList(int fromIndex, int toIndex): Captura todos os elementos dentro do intervalo especificado.
  12. default void replaceAll(UnaryOperator<E> operator): Método padrão no Java 8 que aplica operadores em Java unários a cada elemento e depois substitui cada elemento com o resultado da operação.

Como usar listas em Java

Abaixo, apresentaremos métodos comumente utilizados com listas em Java. Entre eles estão métodos que convertem arrays em listas e vice-versa, além de ordenarem, recuperarem e modificarem elementos.

Converter array em lista

Para converter um array em lista, você pode iterar sobre o array usando loops e adicionar os elementos à lista um a um, usando o método add():

import java.util.*;
public class ArrayToList{
    public static void main(String args[]){
        // Criando um Array
        String[] colors = {"azul", "verde", "vermelho", "amarelo"};
        System.out.println("Array: " + Arrays.toString(colors));
        // Convertendo Array para Lista
        List<String> list = new ArrayList<String>();
        for (String color : colors) {
            list.add(color);
        }
        System.out.println("Lista: " + list);
    }
}
Java

O código resulta na seguinte saída:

Array: [azul, verde, vermelho, amarelo]
Lista: [azul, verde, vermelho, amarelo]
Java

Converter lista em array

Com o método toArray(), você pode converter uma lista em array:

import java.util.*;
public class ListToArray{
    public static void main(String args[]){
        List<String> days = new ArrayList<String>();
        days.add("Segunda-feira");
        days.add("Terça-feira");
        days.add("Quarta-feira");
        days.add("Quinta-feira");
        days.add("Sexta-feira");
        days.add("Sábado");
        days.add("Domingo");
        // Convertendo ArrayList para Array
        String[] array = days.toArray(new String[days.size()]);
        System.out.println("Array: " + Arrays.toString(array));
        System.out.println("Lista: " + days);
    }
}
Java

Na saída, você observará que os elementos no array e na lista são idênticos:

Array: [Segunda-feira, Terça-feira, Quarta-feira, Quinta-feira, Sexta-feira, Sábado, Domingo]
Lista: [Segunda-feira, Terça-feira, Quarta-feira, Quinta-feira, Sexta-feira, Sábado, Domingo]
Java

Chamar e alterar elementos de uma lista

Com o método get(), você pode acessar um elemento em um índice específico. O método set(), por sua vez, permite substituir um elemento por outro em uma posição especificada da lista:

import java.util.*;
public class ListExample{
    public static void main(String args[]){
        // Criando uma Lista
        List<String> letras = new ArrayList<String>();
        // Adicionando elementos
        letras.add("a");
        letras.add("b");
        letras.add("c");
        // get()
        System.out.println("Elemento no índice 1: " + letras.get(1));
        // set()
        letras.set(2, "d");
        for (String letra : letras)
            System.out.println(letra);
    }
}
Java

Como os índices em Java começa no 0, obtemos o seguinte resultado:

Elemento no índice 1: b
a
b
d
Java

Ordenar lista

Você pode ordenar uma lista Java usando o método .sort(), da classe Collections. Você pode iterar sobre a lista usando um loop e imprimir os elementos no terminal, um a um:

import java.util.*;
class SortArrayList{
    public static void main(String args[]){
        // Criando uma lista de números
        List<Integer> numeros = new ArrayList<Integer>();
        numeros.add(4);
        numeros.add(57);
        numeros.add(92);
        numeros.add(26);
        // Ordenando
        Collections.sort(numeros);
        for (Integer numero : numeros)
            System.out.println(numero);
    }
}
Java

Os números na Lista Java são exibidos do menor para o maior:

4
26
57
92
Java
Este artigo foi útil?
Para melhorar a sua experiência, este site usa cookies. Ao acessar o nosso site, você concorda com nosso uso de cookies. Mais informações
Page top