Esercitazione su C# ArrayList con esempi
โก Riepilogo intelligente
In C#, ArrayList รจ una collezione dinamica dello spazio dei nomi System.Collections che memorizza gli elementi come oggetti. A differenza di un array, si espande e si contrae in fase di esecuzione e puรฒ contenere valori interi, stringhe e valori booleani in un'unica lista.

Cos'รจ ArrayList in C#?
La raccolta ArrayList รจ simile alla Array tipo di dati in C#. La differenza piรน grande รจ la natura dinamica della raccolta dell'elenco di array.
Per gli array, รจ necessario definire il numero di elementi che l'array puรฒ contenere al momento della dichiarazione dell'array. Ma nel caso della raccolta Array List, non รจ necessario farlo prima. Gli elementi possono essere aggiunti o rimossi dalla raccolta Array List in qualsiasi momento. Diamo un'occhiata piรน in dettaglio alle operazioni disponibili per la raccolta dell'elenco di array.
Dichiarazione di un elenco di array
La dichiarazione di un ArrayList รจ fornita di seguito. Un elenco di array viene creato con l'aiuto del tipo di dati ArrayList. La parola chiave "new" viene utilizzata per creare un oggetto di un ArrayList. L'oggetto viene quindi assegnato alla variabile a1. Quindi ora la variabile a1 verrร utilizzata per accedere ai diversi elementi dell'elenco dell'array.
ArrayList a1 = new ArrayList()
Aggiunta di elementi a un array
Il metodo add viene utilizzato per aggiungere un elemento all'ArrayList. Il metodo add puรฒ essere utilizzato per aggiungere qualsiasi tipo di elemento di tipo dati all'elenco dell'array. Quindi puoi aggiungere un numero intero, una stringa o anche un valore booleano all'elenco dell'array. Di seguito viene fornita la sintassi generale del metodo di addizione
ArrayList.add(element)
Di seguito sono riportati alcuni esempi di come รจ possibile utilizzare il metodo โaggiungiโ. Il metodo add puรฒ essere utilizzato per aggiungere vari tipi di dati alla raccolta Array List.
Di seguito puoi vedere esempi di come possiamo aggiungere stringhe di numeri interi e persino valori booleani alla raccolta Array List.
- a1.add(1) โ Questo aggiungerร un valore intero alla raccolta
- a1.add("Esempio") โ Questo aggiungerร un valore String alla raccolta
- a1.add(true) โ Questo aggiungerร un valore booleano alla raccolta
Ora vediamolo funzionare a livello di codice. Tutto il codice indicato di seguito verrร scritto nella nostra applicazione Console. Il codice verrร scritto nel nostro file Program.cs.
Nel programma seguente scriveremo il codice per creare un nuovo elenco di array. Mostreremo anche come aggiungere elementi e visualizzare gli elementi dell'elenco Array.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add(1); a1.Add("Example"); a1.Add(true); Console.WriteLine(a1[0]); Console.WriteLine(a1[1]); Console.WriteLine(a1[2]); Console.ReadKey(); } } }
Code Spiegazione:-
- Il primo passo viene utilizzato per dichiarare la nostra lista di array. Qui stiamo dichiarando a1 come variabile per contenere gli elementi del nostro elenco di array.
- Utilizziamo quindi la parola chiave add per aggiungere il numero 1, la stringa "Example" e il valore booleano "true" all'elenco dell'array.
- Utilizziamo quindi il metodo Console.WriteLine per visualizzare il valore di ciascun elemento dell'elenco di array sulla console. Noterai che proprio come gli array, possiamo accedere agli elementi tramite le loro posizioni di indice. Quindi per accedere alla prima posizione dell'Array List, utilizziamo la posizione dell'indice [0]. E cosรฌ via e cosรฌ via.
Se il codice sopra riportato viene inserito correttamente e il programma viene eseguito, verrร visualizzato il seguente output.
Produzione:
Dall'output puoi vedere che tutti gli elementi dell'elenco dell'array vengono inviati alla console.
Diamo un'occhiata ad alcuni altri metodi disponibili come parte di ArrayList.
Contare
Questo metodo viene utilizzato per ottenere il numero di elementi nella raccolta ArrayList. Di seguito รจ riportata la sintassi generale di questa istruzione.
ArrayList.Count() โ Questo metodo restituirร il numero di elementi contenuti nell'elenco dell'array.
contiene
Questo metodo viene utilizzato per verificare se un elemento รจ presente nella raccolta ArrayList. Di seguito รจ riportata la sintassi generale di questa istruzione
ArrayList.Contains(elemento) โ Questo metodo restituirร true se l'elemento รจ presente nell'elenco, altrimenti restituirร false.
RimuoviAt
Questo metodo viene utilizzato per rimuovere un elemento in una posizione specifica nella raccolta ArrayList. Di seguito รจ riportata la sintassi generale di questa istruzione
ArrayList.RemoveAt(index) โ Questo metodo rimuoverร un elemento da una posizione specifica dell'elenco degli array.
Ora vediamolo funzionare a livello di codice. Tutto il codice indicato di seguito verrร scritto nella nostra applicazione Console. Il codice verrร scritto nel nostro file Program.cs.
Nel programma seguente, scriveremo il codice per vedere come possiamo utilizzare i metodi sopra menzionati.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add(1); a1.Add("Example"); a1.Add(true); Console.WriteLine(a1.Count); Console.WriteLine(a1.Contains(2)); Console.WriteLine(a1[1]); a1.RemoveAt(1); Console.WriteLine(a1[1]); Console.ReadKey(); } } }
Code Spiegazione:-
- Quindi la prima proprietร che vediamo รจ la proprietร Count. Stiamo ottenendo la proprietร Count dell'elenco di array a1 e quindi la scriviamo nella Console.
- Nella seconda parte, utilizziamo il metodo Contiene per vedere se l'ArrayList a1 contiene l'elemento 2. Successivamente scriviamo il risultato nella Console tramite il comando Writeline.
- Infine, per mostrare il metodo Rimuovi elemento, stiamo eseguendo i passaggi seguenti,
- Per prima cosa scriviamo sulla console il valore dell'elemento nella posizione dell'indice 1 dell'elenco degli array.
- Quindi rimuoviamo l'elemento nella posizione dell'indice 1 dell'elenco dell'array.
- Infine, scriviamo nuovamente nella console il valore dell'elemento nella posizione dell'indice 1 dell'elenco degli array. Questa serie di passaggi darร un'idea chiara se il metodo di rimozione funzionerร come dovrebbe.
Se il codice sopra riportato viene inserito correttamente e il programma viene eseguito, verrร visualizzato il seguente output.
Produzione:
Perchรฉ l'ultimo valore รจ vero?
Se vedi la sequenza di eventi, l'elemento Esempio viene rimosso dall'array perchรฉ si trova nella posizione 1. La posizione 1 dell'array viene quindi sostituita da ciรฒ che prima era nella posizione 2, il cui valore รจ "true"
Come scorrere un ArrayList in C#
Leggere ogni elemento di un ArrayList รจ un'operazione comune. Poichรฉ un ArrayList memorizza i suoi elementi come oggetti, รจ possibile accedervi tramite un ciclo foreach o un ciclo for che utilizza la proprietร Count. Il ciclo foreach รจ il metodo piรน semplice, in quanto scorre ogni elemento in ordine senza bisogno di un indice.
L'esempio seguente crea un ArrayList di stringhe e stampa ciascun valore su una riga separata. Il codice รจ scritto nel file Program.cs di un'applicazione console.
Passo 1) Importa lo spazio dei nomi System.Collections e crea un ArrayList con tre elementi.
Passo 2) Utilizza un ciclo foreach per leggere ciascun elemento come un oggetto e scrivilo nella console.
using System; using System.Collections; namespace DemoApplication { class Program { static void Main(string[] args) { ArrayList a1 = new ArrayList(); a1.Add("Java"); a1.Add("Python"); a1.Add("Kotlin"); foreach (object item in a1) { Console.WriteLine(item); } Console.ReadKey(); } } }
Code Spiegazione:-
- Lo spazio dei nomi System.Collections viene importato in modo che il tipo ArrayList sia disponibile per il programma.
- Con il metodo Add vengono aggiunti tre valori stringa all'ArrayList.
- Il ciclo foreach legge ogni elemento come un oggetto e il metodo Console.WriteLine lo stampa su una nuova riga.
Quando il programma viene eseguito, stampa Java, Pythone Kotlin su righe separate. Un ciclo for con la proprietร Count darebbe lo stesso risultato, permettendoti anche di utilizzare la posizione dell'indice di ciascun elemento.
Metodi e proprietร di ArrayList in C#
La classe ArrayList offre numerosi metodi e proprietร integrati per gestire i suoi elementi. Oltre ad aggiungere e rimuovere elementi, consente di ordinare, cercare e invertire la collezione. I membri piรน comuni sono elencati di seguito.
| Member | Descrizione |
| Aggiungi | Aggiunge un singolo elemento alla fine dell'ArrayList. |
| inserire | Aggiunge un elemento in una specifica posizione di indice. |
| Rimuovere | Rimuove la prima occorrenza di un elemento specifico. |
| RimuoviAt | Rimuove l'elemento nella posizione di indice specificata. |
| Trasparente | Rimuove tutti gli elementi dall'ArrayList. |
| Riordina | Ordina gli elementi in ordine crescente. |
| Reverse | Reverseindica l'ordine degli elementi nell'elenco. |
| contiene | Restituisce true se un dato elemento esiste nella lista. |
| Indice di | Restituisce l'indice di posizione di un dato elemento. |
| Contare | Proprietร che restituisce il numero di elementi memorizzati. |
| Ultra-Grande | Proprietร che restituisce il numero di elementi che la lista puรฒ contenere. |
Questi membri consentono di aggiungere, trovare, ordinare e rimuovere elementi senza dover scrivere la logica manualmente, il che rappresenta uno dei principali vantaggi dell'utilizzo di una collezione rispetto a un semplice array.
Differenza tra ArrayList e List in C#
Sia un ArrayList che un generico Lista I metodi `memory` memorizzano un gruppo di elementi che possono crescere in fase di esecuzione, ma differiscono nel modo in cui gestiscono i tipi. Conoscere la differenza aiuta a scegliere quello giusto per il codice C# moderno.
Le principali differenze sono elencate di seguito:
- Tipo di sicurezza: Un ArrayList memorizza ogni elemento come un oggetto, mentre una List รจ associata a un tipo dichiarato e viene controllata in fase di compilazione.
- Performance: Un ArrayList esegue il boxing e l'unboxing dei tipi valore come int, il che comporta un costo in termini di tempo, mentre un List evita il boxing per una maggiore velocitร .
- Spazio dei nomi: ArrayList risiede in System.Collections, mentre List risiede in System.Collections.Generic.
- casting: La lettura da un ArrayList spesso richiede un cast al tipo originale, mentre una List restituisce direttamente il tipo corretto.
- Raccomandazione: Microsoft Si consiglia List per i nuovi progetti di sviluppo perchรฉ รจ piรน sicuro, piรน veloce e piรน facile da leggere.
In breve, un ArrayList รจ utile per comprendere codice piรน datato o archiviazione di tipi misti, mentre una List รจ la scelta preferita per la maggior parte delle applicazioni odierne.




