Junior — Middle
Használható-e a For-Each ciklus egy olyan objektum iterálására, amely nem valósítja meg a kollekciós felületet vagy nem tömb?
sobes.tech MI
Válasz az MI-től
В 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().