Maison  >  Article  >  Java  >  Outil de traversée de collections : le secret de Java Iterator et Iterable

Outil de traversée de collections : le secret de Java Iterator et Iterable

王林
王林avant
2024-02-20 08:30:49697parcourir

集合遍历利器:Java Iterator与Iterable的奥秘

Java Iterator et Iterable sont deux interfaces clés utilisées pour parcourir les collections dans JavaCollectionsFramework. Ils offrent un moyen simple et unifié d’accéder aux éléments d’une collection sans manipuler directement la collection elle-même. Dans cet article, nous allons approfondir Iterator et Iterable et montrer comment les utiliser pour simplifier le parcours de collection avec du code de démonstration.

Interface itérateur

Iterator est une interface qui définit des méthodes pour itérer les éléments d'une collection. Il propose quatre méthodes pour parcourir les collections :

  • hasNext() : Vérifiez s'il reste des éléments dans la collection.
  • next() : Renvoie l'élément suivant de la collection.
  • remove() : Supprimez l'élément actuel de la collection.
  • forEachRem<code>forEachRem<strong class="keylink">ai</strong>ning(Consumer0d74ac1b2f8f9ab0eb66f930789a9645 act<strong class="keylink">io</strong>n)ai
  • ning(Consumer0d74ac1b2f8f9ab0eb66f930789a9645 act
io

n) : Effectuez une opération sur les éléments restants de la collection.

L'interface Iterator est généralement utilisée avec la méthode Iterator() d'une collection, qui renvoie un objet Iterator qui peut être utilisé pour parcourir les éléments de la collection. Par exemple, le code suivant montre comment utiliser un Iterator pour parcourir une ArrayList :

List<String> names = new ArrayList<>();
names.add("John");
names.add("Mary");
names.add("Bob");

Iterator<String> iterator = names.iterator();
while (iterator.hasNext()) {
String name = iterator.next();
System.out.println(name);
}

Sortie :

List<String> names = new ArrayList<>();
names.add("John");
names.add("Mary");
names.add("Bob");

for (String name : names) {
System.out.println(name);
}

Sortie :

John
Mary
Bob

La différence entre Iterator et Iterable
  • Iterator et Iterable sont tous deux des interfaces permettant de parcourir des collections, mais il existe quelques différences clés entre elles :
  • remove()方法和forEachRemaining()方法。Iterable只提供了iterator()Iterator est une interface d'instance, ce qui signifie qu'elle doit être implémentée par une classe de collection. Iterable est une interface de type, ce qui signifie qu'elle peut être implémentée par n'importe quelle classe, y compris les classes de collection et non-collection.
  • Iterator fournit des fonctions plus riches que Iterable car il fournit la méthode
  • et la méthode forEachRemaining(). Iterable fournit uniquement la méthode iterator().

Iterator est généralement utilisé avec une boucle while, tandis qu'Iterable est généralement utilisé avec une boucle for améliorée.

Conclusion🎜 🎜Java Iterator et Iterable sont deux interfaces clés du framework de collection Java pour parcourir les collections. Ils offrent un moyen simple et unifié d’accéder aux éléments d’une collection sans manipuler directement la collection elle-même. Iterator offre des fonctionnalités plus riches que Iterable, mais Iterable est plus facile à utiliser. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer