Heim > Java > javaLernprogramm > For-Schleife vs. For-Each-Schleife: Was ist schneller für die Iteration in Java?

For-Schleife vs. For-Each-Schleife: Was ist schneller für die Iteration in Java?

Linda Hamilton
Freigeben: 2024-12-17 06:19:24
Original
615 Leute haben es durchsucht

For Loop vs. For-Each Loop: Which is Faster for Iterating in Java?

Leistungsvergleich von for-Schleife vs. for-each-Schleife

Die Optimierung der Codeleistung ist bei der Programmierung von entscheidender Bedeutung. Beim Durchlaufen einer Liste von Objekten stehen Entwickler häufig vor dem Dilemma zwischen der Verwendung einer herkömmlichen for-Schleife und einer for-each-Schleife.

Betrachten Sie die folgenden zwei Schleifen:

for (Object o : objectArrayList) {
    o.DoSomething();
}
Nach dem Login kopieren
for (int i=0; i<objectArrayList.size(); i++) {
    objectArrayList.get(i).DoSomething();
}
Nach dem Login kopieren

Welche Schleife ist schneller?

Laut Punkt 46 in Effective Java von Joshua Bloch: Es gibt keinen erkennbaren Leistungsunterschied zwischen den beiden Schleifen. Tatsächlich kann die for-each-Schleife in bestimmten Szenarien die for-Schleife geringfügig übertreffen.

Die for-each-Schleife eliminiert Boilerplate-Code und potenzielle Fehler, indem sie den Iterator oder die Indexvariable verbirgt. Die Syntax, die „für jedes Element e in Elementen“ lautet, vereinfacht die Lesbarkeit des Codes.

Außerdem stellt Bloch fest, dass die for-each-Schleife die Grenze des Array-Index nur einmal berechnet, wodurch eine potenzielle Leistung ausgeschlossen wird Engpass in manuell geschriebenen For-Schleifen vorhanden.

Das obige ist der detaillierte Inhalt vonFor-Schleife vs. For-Each-Schleife: Was ist schneller für die Iteration in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage