Iterator y Collection , ambos han ayudado y consolado a los programadores en muchas ocasiones. Pero el uso y la aplicación tienen una diferencia muy amplia.
1. Iterador
- Declaración
public interface Iterator Type Parameters: E - the type of elements returned by this iterator
- Los iteradores se utilizan en el marco de la colección en Java para recuperar elementos uno por uno.
- Resumen del método
Modificador y Tipo | Método | Descripción |
---|---|---|
vacío predeterminado | forEachRemaining(Consumidor<? super E> acción) | Realiza la acción dada para cada elemento restante hasta que se hayan procesado todos los elementos o la acción genere una excepción. |
booleano | tieneSiguiente() | Devuelve verdadero si la iteración tiene más elementos. |
mi | Siguiente() | Devuelve el siguiente elemento de la iteración. |
vacío predeterminado | retirar() | Elimina de la colección subyacente el último elemento devuelto por este iterador (operación opcional). |
2. Colección
- Declaración:
public interface Collection<E> extends Iterable<E> Type Parameters: E - the type of elements returned by this iterator
- Una colección es un grupo de objetos individuales representados como una sola unidad. Java proporciona Collection Framework que define varias clases e interfaces para representar un grupo de objetos como una sola unidad.
- Resumen del método
Modificador y Tipo | Método | Descripción |
---|---|---|
booleano | añadir (E mi) | Garantiza que esta colección contenga el elemento especificado (operación opcional). |
booleano | addAll(Colección<? extiende E> c) | Agrega todos los elementos de la colección especificada a esta colección (operación opcional). |
vacío | clear() | Elimina todos los elementos de esta colección (operación opcional). |
booleano | contiene(Objeto o) | Devuelve verdadero si esta colección contiene el elemento especificado. |
booleano | contieneTodo(Colección<?> c) | Devuelve verdadero si esta colección contiene todos los elementos de la colección especificada. |
booleano | es igual a (Objeto o) | Compara el objeto especificado con esta colección para la igualdad. |
En t | código hash() | Devuelve el valor del código hash para esta colección. |
booleano | esta vacio() | Devuelve verdadero si esta colección no contiene elementos. |
Iterador<E> | iterador() | Devuelve un iterador sobre los elementos de esta colección. |
secuencia predeterminada<E> | flujoParalelo() | Devuelve un Stream posiblemente paralelo con esta colección como fuente. |
booleano | quitar(Objeto o) | Elimina una sola instancia del elemento especificado de esta colección, si está presente (operación opcional). |
booleano | removeAll(Colección<?> c) | Elimina todos los elementos de esta colección que también están contenidos en la colección especificada (operación opcional). |
booleano predeterminado | removeIf(Predicado<? super E> filter) | Elimina todos los elementos de esta colección que satisfacen el predicado dado. |
booleano | retenerTodo(Colección<?> c) | Retiene solo los elementos de esta colección que están contenidos en la colección especificada (operación opcional). |
En t | Talla() | Devuelve el número de elementos de esta colección. |
Separador predeterminado<E> | divisor() | Crea un Spliterator sobre los elementos de esta colección. |
secuencia predeterminada<E> | corriente() | Devuelve un Stream secuencial con esta colección como fuente. |
Objeto[] | aArray() | Devuelve una array que contiene todos los elementos de esta colección. |
T[] | aArray(T[] a) | Devuelve una array que contiene todos los elementos de esta colección; el tipo de tiempo de ejecución de la array devuelta es el de la array especificada. |
Iterador vs. Recopilación
- El iterador solo puede moverse al siguiente() elemento o eliminar() un elemento.
Sin embargo, Collection puede agregar() , iterar, eliminar() o clear() los elementos de la colección. - Iterator proporciona una mejor velocidad que Collections, ya que la interfaz de Iterator tiene un número limitado de operaciones.
- java.sql.SQLException extiende Iterable . Por lo tanto, permite a la persona que llama iterar de forma segura sobre las causas de SQLException.
Usar una colección, en este caso, sería costoso porque, en una string de n excepciones, el uso de una colección en la interfaz SQLException podría requerir la construcción de O(n^2) elementos.
Sin embargo, el uso de Iterable proporciona acceso O(n) a la string de excepciones.
Publicación traducida automáticamente
Artículo escrito por RishabhPrabhu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA