Qual é a diferença entre o iterador e a enumeração

Índice:

Anonim

o principal diferença entre iterador e enumeração é que é possível ler e remover elementos de uma coleção usando um iterador, enquanto só é possível ler os elementos de uma coleção usando uma enumeração.

Um programa de computador é um conjunto de instruções para permitir que a CPU execute uma determinada tarefa. O programador pode escrever o programa usando uma linguagem de programação de alto nível, como Java. Existem mecanismos para manipular um conjunto de objetos em Java. Dois deles são iterador e enumeração.

Enumeração, Iterator, Java

O que é Iterator

Iterator é uma interface na estrutura Java Collection. Ou seja, permite percorrer os elementos da coleção um após o outro. É possível percorrer elementos como listas, conjuntos e mapas. Iterator permite que o chamador elimine os elementos da coleção especificada durante a iteração dos elementos.

Figura 1: programa Java com um iterador

No programa acima, existe uma ArrayList chamada lista. O método add ajuda a adicionar itens à lista. A linha 14 imprime os itens da lista. O itr é do tipo Iterator e o iterator () retorna o iterador para o início da coleção. O loop while chama o método hasNext (). Ele retorna verdadeiro se houver mais elementos na coleção. Ele retorna falso se não houver mais elementos para percorrer. Dentro do loop, o método next () ajuda a obter todos os elementos da coleção. Da mesma forma, itr lê e exibe os elementos da coleção.

Na linha 21, o itr remove o último elemento, que é três, da coleção. Finalmente, os elementos restantes, que são um e dois, são exibidos no console.

O que é enumeração

A enumeração é uma interface que permite obter um elemento de cada vez em uma coleção de objetos. A enumeração é considerada obsoleta para o novo código. No entanto, ele é usado por vários métodos definidos pelas classes legadas, como Vector.

Figura 2: programa Java com enumeração

No programa acima, dias é do tipo Enumeração. O dayNames é um objeto do Vector. O método add ajuda a adicionar elementos ao Vector. O loop while ajuda a percorrer os elementos. O hasMoreElements () retornará verdadeiro se houver mais elementos a serem obtidos. Por outro lado, ele retornará falso quando todos os elementos forem enumerados. Além disso, o método nextElement () está dentro do loop while ajuda a retornar o próximo objeto na enumeração como uma referência de Object genérica.

Diferença entre Iterator e Enumeração

Definição

Iterator é uma interface na estrutura de coleção do Java que permite percorrer uma coleção. Porém, Enumeração é uma interface composta por métodos que permitem enumerar os elementos em uma coleção de objetos.

Acessando

É possível ler e remover elementos usando Iterator, ao passo que só é possível ler os elementos usando Enumerator.

Métodos

Iterator fornece os métodos hasNext (), next () e remove (), enquanto Enumeration fornece os métodos hasMoreElements () e nextElement ().

Alternativas

Além disso, o programador pode usar ListIterator em vez de Iterator, enquanto o programador pode usar Iterator em vez de Enumeration.

Conclusão

Em resumo, Iterator e Enumeration são interfaces em Java que ajudam a percorrer os elementos de uma coleção. A principal diferença entre iterador e enumeração é que é possível ler e remover elementos de uma coleção usando um iterador, enquanto só é possível ler os elementos de uma coleção usando uma enumeração. Além disso, o programador também pode usar o ListIterator para percorrer os elementos de uma coleção.

Referências:

1. “Java Iterator Interface - Javatpoint.” Www.javatpoint.com, disponível aqui. 2.Tutorialspoint.com. “Java The Enumeration Interface.” Www.tutorialspoint.com, disponível aqui.

Qual é a diferença entre o iterador e a enumeração