C# Academy · Lezione

Array, slicing, List<T>, Dictionary<TKey,TValue>

Crei e utilizzi array, copi uno slice e lavori con List e Dictionary per elementi dinamici e ricerche basate su chiavi.

Lezione 1 di 38 passaggi

Array, slicing, List<T>, Dictionary<TKey,TValue> è una lezione C# Academy gratuita su CoddyKit. Questa è la lezione 1 di 3. 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 3 lezioni in totale.

Panoramica della lezione

Obiettivo: scegliere il contenitore appropriato.

  • Array: dimensione fissa, indicizzazione rapida
  • List<T>: cresce e si riduce
  • Dictionary<TKey,TValue>: ricerca rapida per chiave
  • Semplice porzione di array tramite copia

Nozioni di base sugli array

Gli array hanno dimensione fissa e sono indicizzabili. Utilizzare Length e indici a partire da zero.

using System;

public class Program
{
  public static void Main(string[] args)
  {
    int[] nums = new int[] { 10, 20, 30 };
    Console.WriteLine("Length = " + nums.Length);
    Console.WriteLine("First = " + nums[0]);
    Console.WriteLine("Last = " + nums[nums.Length - 1]);

    // Update by index
    nums[1] = 25;
    Console.WriteLine("Updated middle = " + nums[1]);
  }
}

Porzione di array tramite copia

In C# 6 non esiste l'operatore di intervallo. Creare un piccolo helper con Array.Copy per copiare una porzione.

using System;

public class Program
{
  // Copy a slice [start, start+count) into a new array
  public static int[] Slice(int[] src, int start, int count)
  {
    int[] dst = new int[count];
    Array.Copy(src, start, dst, 0, count);
    return dst;
  }

  public static void Main(string[] args)
  {
    int[] data = new int[] { 5, 6, 7, 8, 9 };
    int[] middle = Slice(data, 1, 3); // {6,7,8}
    Console.WriteLine("Slice len=" + middle.Length + " first=" + middle[0] + " last=" + middle[middle.Length - 1]);
  }
}

Nozioni di base su List<T>

List<T> si ridimensiona automaticamente. Utilizzare Add/Insert/Remove e Count.

using System;
using System.Collections.Generic;

public class Program
{
  public static void Main(string[] args)
  {
    List<string> items = new List<string>();
    items.Add("apple");
    items.Add("banana");
    items.Insert(1, "kiwi"); // apple, kiwi, banana
    Console.WriteLine("Count = " + items.Count);
    Console.WriteLine("Second = " + items[1]);

    items.Remove("apple");
    Console.WriteLine("After remove, first = " + items[0]);
  }
}

Nozioni di base su Dictionary

Dictionary memorizza coppie chiave-valore. Utilizzare ContainsKey/TryGetValue per ricerche sicure.

using System;
using System.Collections.Generic;

public class Program
{
  public static void Main(string[] args)
  {
    Dictionary<string, int> ages = new Dictionary<string, int>();
    ages["Ada"] = 28;           // add
    ages["Alan"] = 35;          // add
    ages["Alan"] = 36;          // update

    int value;
    if (ages.TryGetValue("Ada", out value))
    {
      Console.WriteLine("Ada age = " + value);
    }

    Console.WriteLine("Has Grace? " + ages.ContainsKey("Grace"));
  }
}

Scegliere le raccolte

Scegliere:

  • Array per dimensioni fisse e indicizzazione numerica
  • List<T> quando la dimensione cambia
  • Dictionary<K,V> quando si dispone di chiavi univoche
  • Copiare le porzioni con l'helper Array.Copy

Scelta per la ricerca tramite chiave

Verifica rapida: quale raccolta è più adatta quando servono ricerche rapide tramite una chiave univoca?

Riepilogo

Riepilogo: gli array hanno dimensione fissa; copiare le porzioni con Array.Copy. Utilizzare List<T> per gli elenchi dinamici e Dictionary<K,V> per ricerche rapide tramite chiave.

Gratis per iniziare

Impara C# con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
93
Lezioni
346

Domande Frequenti

La lezione «Array, slicing, List<T>, Dictionary<TKey,TValue>» è gratuita?

Sì — il testo completo di «Array, slicing, List<T>, Dictionary<TKey,TValue>» è 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 3 lezioni in totale.

Cosa imparerò in «Array, slicing, List<T>, Dictionary<TKey,TValue>»?

Crei e utilizzi array, copi uno slice e lavori con List e Dictionary per elementi dinamici e ricerche basate su chiavi. 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 3.

Quanto tempo richiede la lezione «Array, slicing, List<T>, Dictionary<TKey,TValue>»?

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. Array, slicing, List , Dictionary
  2. Pattern foreach e inizializzatori di raccolte
  3. Anteprima di LINQ: Where, Select, OrderBy, Take/Skip; esecuzione differita
← Torna a C# Academy