Pętla for-each po tablicach i kolekcjach
Wyjatki i petla for-each - Podstawy Javy (Java)
Pętla foreach: Zastosowania: Iteracja po tablicach Iteracja po kolekcjach (List, Set) Iteracja po tablicach wielowymiarowych Przetwarzanie elementów bez potrzeby indeksów Zalety: Prostsza i bardziej czytelna składnia Mniejsze ryzyko błędów z indeksami Automatyczna iteracja po wszystkich elementach Bezpieczniejsza niż standardowa pętla for Ograniczenia: Brak dostępu do indeksu elementu Brak możliwości modyfikacji elementów (tylko kopia) Tylko jednokierunkowa iteracja (od początku do końca) Nie można modyfikować rozmiaru kolekcji podczas iteracji
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
public class Main {
public static void main(String[] args) {
// Przykład 1: Foreach na tablicy
System.out.println("=== Przykład 1: Tablica liczb ===");
int[] numbers = {1, 2, 3, 4, 5};
System.out.println("Standardowa pętla for:");
for (int i = 0; i < numbers.length; i++) {
System.out.print(numbers[i] + " ");
}
System.out.println("\nPętla foreach:");
for (int number : numbers) {
System.out.print(number + " ");
}
// Przykład 2: Foreach na kolekcji
System.out.println("\n\n=== Przykład 2: Lista stringów ===");
List<String> fruits = new ArrayList<>(Arrays.asList("jabłko", "gruszka", "banan", "pomarańcza"));
System.out.println("Pętla foreach na liście:");
for (String fruit : fruits) {
System.out.println("- " + fruit);
}
// Przykład 3: Foreach na tablicy dwuwymiarowej
System.out.println("\n=== Przykład 3: Tablica 2D ===");
int[][] matrix = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
System.out.println("Pętla foreach na tablicy 2D:");
for (int[] row : matrix) {
for (int number : row) {
System.out.print(number + " ");
}
System.out.println();
}
// Przykład 4: Ograniczenia pętli foreach
System.out.println("\n=== Przykład 4: Modyfikacja elementów ===");
int[] values = {1, 2, 3, 4, 5};
// Próba modyfikacji - nie zadziała
for (int value : values) {
value *= 2; // Modyfikuje tylko kopię
}
System.out.println("Po próbie modyfikacji:");
System.out.println(Arrays.toString(values));
}
} Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.
Wszystkie lekcje kursu Podstawy Javy · Zaloguj się, aby zapisać postęp na koncie.