English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial Básico de Java

Java Controle de Fluxo

Java Array

Java Orientação a Objetos (I)

Java Orientação a Objetos (II)

Java Orientação a Objetos (III)

Tratamento de Exceções Java

Java Lista (List)

Java Fila (Queue)

Java Conjunto Map

Java Conjunto Set

Java Entrada e Saída(I/O)

Reader Java/Writer

Outros tópicos Java

Interface Java Iterator

Neste tutorial, vamos aprender a interface Java Iterator através de um exemplo.

A interface Iterator do framework de coleções Java nos permite acessar os elementos da coleção. Ela tem um subinterface chamado ListIterator.

Todos os conjuntos Java contêm um método iterator(). Este método retorna uma instância de iterador usada para iterar sobre os elementos do conjunto.

Métodos do Iterator

A interface Iterator oferece4Este método, que pode ser usado para executar várias operações em elementos de conjunto.

  • hasNext() - Retornar true se houver elementos na coleção

  • next() - Retornar o próximo elemento da coleção

  • remove() -Remover o último elemento retornado por next()

  • forEachRemaining() - Executar a operação específica em cada elemento restante da coleção

Exemplo: Implementação do Iterator

Neste exemplo, implementamos os métodos hasNext(), next(), remove() e forEachRemaining() da interface Iterator em uma lista de arrays.

import java.util.ArrayList;
import java.util.Iterator;
class Main {
    public static void main(String[] args) {
        //Criar uma ArrayList
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(3);
        numbers.add(2);
        System.out.println("ArrayList: " + numbers);
        //Criar uma instância de Iterator
        Iterator<Integer> iterate = numbers.iterator();
        //Usar o método next()
        int number = iterate.next();
        System.out.println("Acessar elemento: " + number);
        //Usando o método remove()
        iterate.remove();
        System.out.println("Remoção de elemento: "); + number);
        System.out.print("Lista de ArrayList atualizada: ");
        //Usando o método hasNext()
        while(iterate.hasNext()) {
            //Usando o método forEachRemaining()
            iterate.forEachRemaining((value -> System.out.print(value + ", "));
        }
    }
}

Resultados de saída

ArrayList: [1, 3, 2]
Acesso ao elemento: 1
Remoção de elemento: 1
Lista de ArrayList atualizada: 3, 2,

Neste exemplo, note as seguintes linhas:

iterate.forEachRemaining((value -> System.put.print(value + ", "));

Aqui, vamosexpressão lambdaPassado como parâmetro para o método forEachRemaining().

Agora, este método imprimirá todos os elementos restantes da lista de arrays.