Sobes.tech
Junior — Middle

Welche Methoden müssen in der Klasse implementiert werden, damit ihre Objekte in einer for-each-Schleife verwendet werden können?

sobes.tech KI

Antwort von AI

Damit Objekte einer Klasse in einer Java-For-Each-Schleife verwendet werden können, muss die Klasse das Interface Iterable<T> implementieren. Die wichtigste Methode, die implementiert werden muss, ist:

Iterator<T> iterator();

Diese Methode gibt ein Iterator-Objekt zurück, das die Methoden:

  • boolean hasNext() — überprüft, ob ein nächstes Element vorhanden ist.
  • T next() — gibt das nächste Element zurück.

Beispiel:

import java.util.Iterator;

public class MyCollection implements Iterable<String> {
    private String[] data = {"a", "b", "c"};

    @Override
    public Iterator<String> iterator() {
        return new Iterator<String>() {
            private int index = 0;

            @Override
            public boolean hasNext() {
                return index < data.length;
            }

            @Override
            public String next() {
                return data[index++];
            }
        };
    }
}

// Verwendung:
// for (String s : new MyCollection()) {
//     System.out.println(s);
// }