Sobes.tech
Junior — Middle
103

È possibile utilizzare un ciclo For-Each per iterare su un oggetto che non implementa l'interfaccia di collezione o non è un array?

Risposta dell'AI

sobes.tech AI

В Java цикл for-each (enhanced for) можно использовать только для объектов, которые реализуют интерфейс Iterable или являются массивами. Если объект не реализует Iterable и не является массивом, то использовать for-each напрямую нельзя.

Например, следующий код сработает:

List<String> list = Arrays.asList("a", "b", "c");
for (String s : list) {
    System.out.println(s);
}

А если у вас есть объект, который не реализует Iterable, то для итерации нужно использовать другие способы, например, классический цикл с индексами (если это массив) или получить итератор, если это возможно.

Если нужно использовать for-each для своего класса, можно реализовать интерфейс Iterable и определить метод iterator().