Was ist der Unterschied zwischen for-Schleife und erweiterter for-Schleife in Java?

Schleifen in Java ermöglichen es den Entwicklern, die Codefunktionen mehrfach zu wiederholen. Das traditionelle „für”-Schleife und die „erweiterte for-Schleife„sind zwei grundlegende Schleifenmechanismen in Java, die bei der Iteration entlang der Zielcontainer helfen.

In diesem Artikel vergleichen wir die „for“-Schleife und die „erweiterte for“-Schleife.

Was ist die „for“-Schleife?

Die standardmäßige „for“-Schleife in Java folgt einer bestimmten Syntax, die aus drei Teilen besteht: Initialisierung, Bedingung und Inkrementierung. Diese Schleife wird normalerweise verwendet, wenn die Iteration eine größere Kontrolle über jeden Schritt erfordert. Es ermöglicht die explizite Initialisierung und Änderung von Schleifenvariablen und ermöglicht so eine feinkörnige Kontrolle über die Iteration.

Syntax

for(initialization; condition; increment/decrement)

Parameter

Initialisierung: Legt den Startwert der Schleifensteuervariablen fest.

Zustand: Die Schleife wird so lange ausgeführt, bis die Bedingung erfüllt ist.

erhöhen/verringern: Nach jeder Iteration wird die Schleifenkontrollvariable aktualisiert.

Beispiel: Verwendung der „for“-Schleife

Schauen wir uns einen Beispielcode an, der die „for“-Schleife anwendet:

package com.company;
public class Class1 {

    public static void main(String[] args) {
        for (int x = 1; x <= 7; x++) {
            System.out.print(x + " ");
        }
    }
}

Der obige Code führt eine „for“-Schleife für eine Variable aus.X“. Die Schleife wird siebenmal durchlaufen und die Variable wird jedes Mal erhöht, wenn der Wert „x“ auf dem Bildschirm ausgegeben wird.

Ausgabe

Was ist die erweiterte for-Schleife (for-Each)?

Umgekehrt ist die „verbessert für”-Schleife, auch als „für jede”-Schleife bietet eine vereinfachte Syntax zum Iterieren der Elemente in Sammlungen. Diese Schleife ist besonders dann von Vorteil, wenn der Entwickler keinen direkten Zugriff auf einzelne Array-Elemente oder deren Indizes benötigt. Die erweiterte for-Schleife übernimmt automatisch die Iteration und abstrahiert die Komplexität der Verwaltung von Schleifenvariablen und -bedingungen.

Syntax

for(item : collection)

In dieser Syntax: „Artikel„ stellt die Variable dar, die jedes Element/Element in der Sammlung enthält, und „Sammlung„ist das iterierte Array oder die iterierte Sammlung.

Beispiel 1: Nutzung der erweiterten „for“-Schleife

Betrachten wir ein Beispiel, in dem wir mithilfe der erweiterten for-Schleife die Summe der Elemente in einem Array ermitteln möchten:

package com.company;
public class Class1 {

    public static void main(String[] args){
    int[] marks = {4, 54, 2, 5, 42};
    int sum = 0;
    	for (int mark : marks) {
        sum += mark;
    }
    	System.out.println("Sum of the marks are: " + sum);
    }
}

In den obigen Codezeilen:

  • Weisen Sie „eine Variable mit dem Namen sum zu“0“.
  • Anschließend wird jeder Wert von „ durchlaufen.Markierungen”-Array über eine „for-each“-Schleife.
  • Der Wert des aktuellen Elements wird zum „Summe”-Variable zu Beginn jeder Iteration.
  • Das Endergebnis von „Summe„, das nach Abschluss der Schleife erscheint, stellt die Gesamtzahl der Elemente des Arrays dar.
  • Der Code endet mit der Ausgabe des angegebenen Ergebnisses und der berechneten Summe.

Ausgabe

Beispiel 2: Anwenden der for-Each-Schleife auf ein Array

Diese Demonstration wendet die „for-Each“-Schleife auf ein Array an:

package com.company;
public class Class1 {


    public static void main(String[] args){
        int arr1[]={3, 65, 76, 23};
        int sum=0;
        for(int a:arr1){
            sum=sum+a;
        }
        System.out.println("Sum is: "+sum);
    }
}

In diesem Codeblock:

  • Initialisieren Sie ein Ganzzahl-Array, das die angegebenen Ganzzahlen enthält.
  • Initialisieren Sie nun die Variable „Summe“ bis Null.
  • Jede „A“ im „arr1Das Array-Element wird mithilfe der „for-each“-Schleife iteriert.
  • Der „SummeDie Variable „a“ wird nach jeder Iteration mit dem Wert „a“ aktualisiert.
  • Drucken Sie abschließend die Endsumme aus, die die Summe aller Einträge im Array widerspiegelt, nachdem die Schleife beendet ist.

Ausgabe

Unterschied zwischen „for“-Schleife und „erweiterter for“-Schleife

Während beide Schleifen den gleichen Zweck haben, Elemente in einer Sammlung zu durchlaufen, weisen sie auch einige Unterschiede auf, die unten aufgeführt sind:

Merkmalefor-SchleifeVerbesserte for-Schleife
Kontrolle über IterationsvariablenIn der herkömmlichen for-Schleife haben Entwickler explizite Kontrolle über die Initialisierung, Bedingung und Inkrementierung der Schleifenvariablen. Dies ermöglicht eine granulare Anpassung und ermöglicht so eine präzise Kontrolle über den Iterationsprozess.Die erweiterte for-Schleife übernimmt automatisch die Variablendeklaration und den Iterationsprozess und eignet sich daher besser für Situationen, in denen eine direkte Kontrolle über die Schleifenvariablen nicht erforderlich ist.
AnwendungsfälleDie for-Schleife wird häufig verwendet, wenn eine differenzierte Steuerung des Iterationsprozesses erforderlich ist, z. B. um mathematische Berechnungen an Elementen durchzuführen, Arrays zu sortieren oder Elemente basierend auf bestimmten Bedingungen zu filtern.Die erweiterte for-Schleife ist besonders nützlich für Szenarien, in denen die einzige Anforderung darin besteht, nacheinander auf jedes Element zuzugreifen, z. B. beim Drucken von Elementen, beim Berechnen von Aggregaten oder beim Durchführen einfacher Operationen für jedes Element.
DatentypenDie herkömmliche for-Schleife kann mit jeder indexbasierten Datenstruktur verwendet werden, einschließlich Arrays und String-Objekten.Die erweiterte for-Schleife wurde speziell für die Arbeit mit Sammlungen entwickelt und eignet sich daher optimal zum Durchlaufen von Listen, Mengen und Warteschlangen.

Abschluss

Der „für” Schleife und „verbessert für”-Schleifen sind beides leistungsstarke Schleifenmechanismen in Java. Die „for“-Schleife ermöglicht eine feinkörnige Steuerung und Manipulation von Schleifenvariablen und eignet sich daher für komplexe Muster und Datenstrukturen. Andererseits gibt die „erweiterte for“-Schleife eine präzisere und lesbarere Syntax für eine einfache Iteration über Arrays und Sammlungen zurück.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen