O que é Iterator em Java e como usá-lo?



O blog Iterator em Java lhe dará uma introdução adequada ao que é um iterador e como usá-lo em Java com alguns exemplos

Se você está trabalhando em um e digamos que você queira imprimir uma sequência, é aí que o Iterator em Java entra em cena. Desta forma, você pode obter a sequência mesmo sem adicionar a instrução de impressão para cada linha. Então, vamos aprender sobre o Iterator em .

tipos de filtros no tableau

Abaixo estão os tópicos que abordarei neste módulo:





Vamos começar!

O que é um iterador?

Java oferece suporte principalmente a quatro cursores diferentes. São eles:



  • Enumeração
  • Iterator
  • ListIterator
  • Divisor

Cada um desses cursores Java tem algumas vantagens e desvantagens. Vamos nos concentrar no Iterator neste artigo.

Agora, o que é um iterador em Java?

Iterator é uma interface que pertence a uma estrutura de coleção. Ele permite que você percorra a coleção, acessa o elemento de dados e remove os elementos de dados da coleção.



Também é considerado um iterador universal, pois você pode aplicá-lo a qualquer objeto. Usando um Repetidor, você pode executar operações de leitura e remoção. Esta é uma versão melhorada de Enumeração com as funcionalidades adicionais de capacidade de remoção de um elemento.

Métodos Java Iterator

O iterador Java possui 4 métodos no total. Vamos entendê-los em detalhes.

o que o formato faz em python
MétodosDescrição
forEachRemaining (Consumeraction)Ele executa as ações em cada um dos elementos até e a menos que todos os elementos tenham sido processados. Também até que uma exceção seja lançada pela ação.
hasNext ()este retorna um valor verdadeiro se um grande número de elementos for encontrado durante a iteração.
Next()este retorna o próximo elemento especificado durante a iteração.
remover()Este método remova o elemento atual. Lança IllegalStateException se for feita uma tentativa de chamar remove () que não seja precedida por uma chamada para next ().
boolean hasNext ()Isso retorna verdadeiro se a iteração tiver mais elementos.

Exemplo:

class Método {public static void main (String [] args) ArrayList list = new ArrayList () list.add ('E') list.add ('D') list.add ('U') list.add ('R ') list.add (' E ') list.add (' K ') list.add (' A ') // Iterator para percorrer a lista Iterator iterator = list.iterator () System.out.println (' Listar elementos : ') while (iterator.hasNext ()) System.out.print (iterator.next () +' ') System.out.println ()}}

Saída: EDUREKA

Vamos dar uma olhada no ListIterator em Java.

ListIterator em Java

ListIterator em Java, é um iterador que permite aos usuários percorrer a coleção em ambas as direções. Ele contém os seguintes métodos:

MétodosMétodo e Descrição
void add (Object obj) Insere obj na lista na frente do elemento que será retornado na próxima chamada para next ().
boolean hasNext () Retorna verdadeiro se houver o próximo elemento. Caso contrário, retorna falso.
boolean hasPrevious () Retorna verdadeiro se houver um elemento anterior. Caso contrário, retorna falso.
Próximo objeto () Retorna o próximo elemento. Uma NoSuchElementException é lançada se não houver o próximo elemento.
int nextIndex () Retorna o índice do próximo elemento. Se não houver o próximo elemento, retorna o tamanho da lista.
Objeto anterior () Retorna o elemento anterior. Uma NoSuchElementException é lançada se não houver um elemento anterior.
int previousIndex () Retorna o índice do elemento anterior. Se não houver um elemento anterior, retorna -1.
void remove () Remove o elemento atual da lista. Uma IllegalStateException é lançada se remove () é chamado antes de next () ou previous () ser chamado.
void set (Object obj) Atribui obj para o elemento atual. Este é o último elemento retornado por uma chamada para next () ou anterior ().

Exemplo:

public class Lists {public static void main (String args []) {// Cria uma lista de array ArrayList al = new ArrayList () // adiciona elementos à lista de array al.add ('E') al.add ('D ') al.add (' U ') al.add (' R ') al.add (' E ') al.add (' K ') al.add (' A ') // Use o iterador para exibir o conteúdo de al System.out.print ('Conteúdo original de al:') Iterator itr = al.iterator () while (itr.hasNext ()) {Object element = itr.next () System.out.print (element + '' )} System.out.println () // Modifica os objetos que estão sendo iterados ListIterator litr = al.listIterator () while (litr.hasNext ()) {Object element = litr.next () litr.set (element + '+') } System.out.print ('Conteúdo modificado de al:') itr = al.iterator () while (itr.hasNext ()) {Object element = itr.next () System.out.print (element + '') } System.out.println () // Agora, exiba a lista para trás System.out.print ('Lista modificada para trás:') while (litr.hasPrevious ()) {Object element = litr.previous () System.out. imprimir (elemento + '')} System.out.println ()}}

Resultado:

Originalconteúdo de al:E D U R E K A
Modificadoconteúdo de al:É+D+você+R+É+PARA+ A +
Modificadolista para trás:PARA+PARA+É+R+você+D+ AND +

Agora, vamos dar uma olhada nas vantagens e limitações desta interface iteradora em Java.

Vantagens do Iterator em Java

Iterator em Java tem as seguintes vantagens.

  • Você pode usar esses iteradores para qualquer classe de coleção.
  • Iterator em Java suporta ambos ler bem como remover operações.
  • Se você estiver usando para loop você não pode atualize (adicione / remova) a coleção, enquanto com a ajuda de um iterador você pode atualizar a coleção facilmente.
  • É um Cursor Universal para a API Collection.
  • Os nomes dos métodos são muito simples e fáceis de usar.

Limitações do Iterator em Java

Iteradores em Java têm as seguintes desvantagens:

  • Você só pode realizar iteração de direção direta, ou seja, Iterador Unidirecional.
  • A substituição e adição de um novo elemento não são suportadas pelo Iterator.
  • ListIterator é o iterador mais poderoso, mas só é aplicável para classes implementadas em List. Portanto, não é um iterador universal.
  • Quando você usa operações CRUD, ele não suporta as operações de criação e atualização.
  • Quando você o compara com o Spliterator, ele não permite que você itere elementos paralelamente. Isso significa que ele oferece suporte apenas à iteração Sequencial.
  • Ele não oferece suporte a melhor desempenho para iterar um grande volume de dados.

Isso nos leva ao final deste artigo, onde aprendemos como o iterador em Java funciona. Espero que você tenha esclarecido tudo o que foi compartilhado com você neste tutorial.

o que .trim faz em java

Se você achou este artigo sobre “Iterator em Java” relevante, verifique o uma empresa de aprendizagem online confiável com uma rede de mais de 250.000 alunos satisfeitos espalhados por todo o mundo.

Estamos aqui para te ajudar em todas as etapas de sua jornada, além disso, elaboramos um currículo voltado para estudantes e profissionais que desejam ser um Desenvolvedor Java. O curso foi desenvolvido para dar a você uma vantagem inicial na programação Java e treiná-lo para os conceitos básicos e avançados de Java, juntamente com várias estruturas Java como Hibernate e Spring.

Se você tiver alguma dúvida, fique à vontade para fazer todas as suas perguntas na seção de comentários de “Iterator em Java” e nossa equipe terá prazer em responder.