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.