A for-each Java ciklussal gyorsabban és biztonságosabban haladhat végig a tömbökön és gyűjteményekben, elkerülheti a hibákat és javíthatja a kód olvashatóságát. Ebben az oktatóanyagban részletesebben elmagyarázzuk a for-each módszer felépítését és előnyeit, és megmutatjuk, hogyan használhatja a ciklust a kódjában.

Mire szolgál a for-each Java ciklus?

A for-each ciklust számos olyan esetben használják, amikor a Java-fejlesztőknek tömbökkel kell dolgozniuk. Például gyakori felhasználási módja egy tömb bizonyos elemeinek kinyomtatása vagy keresése. A for-each ciklus hasonlóképpen használható egy ArrayListként megvalósított lista elemeinek végigfutására is. Minden iterációban automatikus műveleteket hajthat végre a szokásos Java-operátorokkal, anélkül, hogy minden elemhez külön utasítást kellene írnia.

A Java for ciklusával ellentétben, amikor a for-each Java ciklust használja, nem kell figyelembe vennie a tömb indexét vagy méretét. Mivel ezeket a szempontokat nem kell figyelembe vennie, elkerülheti azt a kockázatot, hogy az index a érvényes tartományon kívülre kerüljön. A for-each ciklus belsőleg iterátort használ, hogy a tömb vagy lista minden elemét egyenként felhívja. Az iterátor automatikusan végigszámolja a tömböt vagy listát, és befejezi a ciklust, amikor az összes elem át lett futtatva.

Ha azonban az indexhez kell hozzáférnie a következő vagy az előző elem szerkesztéséhez, akkor érdemesebb lehet a for ciklust vagy a while ciklust használni.

Mi a for-each Java ciklus szintaxisa?

A Java nyelvben a for-each ciklus alapvető szintaxisa a következő:

for (type item : array | collection) {
// code block
}
Java
  • array/collection: A tömb vagy gyűjtemény neve
  • item: A tömb vagy gyűjtemény minden eleme ehhez a változóhoz van rendelve
  • type: A tömb vagy gyűjtemény adattípusa

A cikluson belül a kódblokk minden iterációra végrehajtásra kerül.

Példák a for-each Java ciklus használatára

Az alábbiakban bemutatjuk, hogyan lehet a for-each metódust képernyőkimenettel és aritmetikai műveletekkel használni.

Elemek kimenete a konzolra

A for-each ciklussal a tömb vagy gyűjtemény minden elemét megjelenítheti a képernyőn.

class Main {
    public static void main(String[] args) {
        // array
        String[] names = {"Sophie", "Mia", "Harrison", "Elliot", "Melissa"};
        // for each loop
        for (String name: names) {
            System.out.println(name);
        }
    }
}
In the console, we get the output:
```Java
Sophie
Mia
Harrison
Elliot
Melissa
Java

A lista elemeit analóg módon is ki lehet adni. A ciklus forráskódja változatlan marad.

import java.util.ArrayList;
class Main {
    public static void main(String[] args) {
        // list
        ArrayList<String> names = new ArrayList<String>();
        names.add( "Sophie" );
        names.add( "Mia" );
        names.add( "Harrison" );
        names.add( "Elliot" );
        names.add( "Melissa" );
        // for each loop
        for(String name: names){
            System.out.println(name);
        }
    }
}
Java

A listán szereplő minden névhez egy karakterlánc generálódik:

Sophie
Mia
Harrison
Elliot
Melissa
Java

Egy tömb vagy gyűjtemény elemeinek összegének kiszámítása

A for-each Java metódus megkönnyíti az aritmetikai műveletek végrehajtását, például a tömb vagy lista elemeinek összeadását. Az operátorok a ciklus kódblokkján belül az egyes elemek helyőrzőjeként szolgáló változóhoz vannak kapcsolva.

class Main {
    public static void main(String[] args) {
        // array
        int[] numbers = {10, 34, 7, 19, -28};
        int sum = 0;
        // addition
        for (int number: numbers) {
            sum += number;
        }
        System.out.println("Result = " + sum);
    }
}
Java

A tömb számjai sorrendben hozzáadódnak a sum változóhoz, amelyet korábban a cikluson kívül deklaráltunk. A kimenet:

Result = 42
Java
Ugrás a főmenübe