0Pricing
C# Academy · Lezione

Il ciclo foreach

Iteri senza indici.

Il ciclo foreach è una lezione C# Academy gratuita su CoddyKit. Questa è la lezione 1 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento C# Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso C# Academy include 4 lezioni in totale.

Che cos'è foreach?

Il ciclo foreach consente di visitare ogni elemento di una raccolta, uno alla volta.

Non deve gestire un indice o un contatore. C# scorre la raccolta al posto suo e assegna ogni elemento a una variabile scelta da lei.

È il modo più semplice per leggere tutti gli elementi di un array o di una lista.

Sintassi di base

La struttura è semplice: foreach (var item in collection) seguito da un blocco di istruzioni.

A ogni iterazione, item contiene l'elemento successivo. Il ciclo termina automaticamente dopo l'ultimo elemento.

foreach (var name in names)
{
    Console.WriteLine(name);
}

Il suo primo foreach

Scorriamo un array di stringhe e stampiamo ogni nome.

Noti che non servono né un indice né un controllo della lunghezza. Il ciclo visita semplicemente ogni elemento nell'ordine corretto.

string[] names = { "Ada", "Linus", "Grace" };
foreach (var name in names)
{
    Console.WriteLine(name);
}

La variabile del ciclo

La variabile del ciclo (in questo caso n) è una nuova copia creata per ogni elemento.

Può scegliere qualsiasi nome. Ne scelga uno che descriva l'elemento, come number o n.

int[] scores = { 90, 75, 88 };
foreach (var n in scores)
{
    Console.WriteLine(n);
}

Usare var o un tipo esplicito

Può scrivere esplicitamente il tipo dell'elemento invece di usare var.

Entrambe le modalità funzionano allo stesso modo. Con var il compilatore deduce il tipo, mantenendo il codice più breve.

int[] scores = { 90, 75, 88 };
foreach (int score in scores)
{
    Console.WriteLine(score);
}

Eseguire operazioni nel blocco

Il blocco del ciclo può eseguire qualsiasi operazione: calcoli, condizioni o la costruzione di un totale.

Qui aggiungiamo ogni valore a una somma progressiva e stampiamo il risultato dopo il ciclo.

int[] nums = { 4, 8, 15 };
int total = 0;
foreach (var x in nums)
{
    total += x;
}
Console.WriteLine(total);

foreach con condizioni

Può inserire un if nel ciclo per agire solo su determinati elementi.

Questo esempio stampa solo i numeri pari dell'array.

int[] nums = { 1, 2, 3, 4, 5, 6 };
foreach (var x in nums)
{
    if (x % 2 == 0)
        Console.WriteLine(x);
}

foreach legge, non sostituisce

La variabile del ciclo è di sola lettura all'interno del ciclo. Non può riassegnarla per modificare la raccolta.

Questa riga causerebbe un errore di compilazione, perché la variabile di foreach è immutabile.

foreach (var x in nums)
{
    x = x + 1; // ERROR: cannot assign to iteration variable
}

Scorrere i caratteri

Una stringa è una sequenza di caratteri, quindi può usare foreach anche su di essa.

A ogni iterazione ottiene un char dal testo.

string word = "code";
foreach (var c in word)
{
    Console.WriteLine(c);
}

Quando usare foreach

Usi foreach quando vuole visitare ogni elemento e non le serve l'indice.

Se le serve la posizione o vuole modificare la raccolta durante lo scorrimento, un ciclo for è più adatto.

foreach o for

Un ciclo for gestisce un contatore e usa l'indicizzazione, come in arr[i].

foreach nasconde questo meccanismo. È più breve ed evita gli errori di scostamento di uno quando deve soltanto leggere ogni elemento.

for (int i = 0; i < names.Length; i++)
{
    Console.WriteLine(names[i]);
}

Verifica rapida

Verifichi ciò che ha imparato sul ciclo foreach.

Riepilogo

Ha imparato che foreach visita ogni elemento di una raccolta senza usare un indice.

La variabile del ciclo è una copia di sola lettura di ogni elemento. Usi foreach per letture semplici e for quando le serve la posizione o vuole modificare gli elementi.

Domande Frequenti

La lezione «Il ciclo foreach» è gratuita?

Sì — il testo completo di «Il ciclo foreach» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso C# Academy, passa a CoddyKit PRO. Il corso C# Academy include 4 lezioni in totale.

Cosa imparerò in «Il ciclo foreach»?

Iteri senza indici. Eserciti C# Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare C# Academy?

Non è richiesta alcuna esperienza precedente. C# Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «Il ciclo foreach»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione C# Academy?

Sì. Ogni lezione C# Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Il ciclo foreach
  2. Iterare sulle collezioni
  3. break e continue
  4. Errori comuni nell'iterazione
← Torna a C# Academy