Array ed elenchi: confronto sull'utilizzo in C#

Array Ed Elenchi Confronto Sull Utilizzo In C



Una matrice in C# è un insieme di elementi con tipi di dati identici e una dimensione specifica definita. Rappresenta una porzione di memoria adiacente in cui vengono salvati gli elementi. Utilizzando il loro indice, gli array in C# offrono un accesso arbitrario rapido e semplice ai propri membri. Un elenco è una struttura dati dinamica nel linguaggio di programmazione C# che rappresenta un gruppo di componenti tipizzati in modo identico. A differenza degli array, gli elenchi possono aumentare o ridurre le dimensioni in modo dinamico, consentendo l'aggiunta, la rimozione e la modifica efficiente degli elementi. In questo articolo vengono trattate sia le somiglianze che le distinzioni tra matrici C# ed elenchi C#.

Dichiarazione:

Gli array vengono dichiarati utilizzando 'type[] ArrayName;' sintassi in cui il tipo indica il tipo dei membri nella raccolta dell'array e 'ArrName' è il titolo assegnato all'array. Una dichiarazione di un array è indicata da parentesi quadre [].

tipo [ ] NomeArray = nuovo tipo [ ] ;

Gli elenchi vengono dichiarati utilizzando 'List LsName;' sintassi in cui il tipo rappresenta il tipo di dati degli elementi nell'elenco e 'LsName' è il nome assegnato all'elenco. Le parentesi angolari indicano che si tratta di una dichiarazione di tipo generico.







Elenco < tipo > lista nome = nuovo Elenco < tipo > ( ) ;

Inizializzazione:

Le matrici utilizzano le parentesi graffe {} per racchiudere i valori, mentre gli elenchi utilizzano il nuovo costruttore List seguito dalle parentesi graffe {} per racchiudere i valori.



tipo [ ] NomeArray = { v1 , v2 , v3 , ... } ;

Elenco < tipo > lista nome = nuovo Elenco < tipo > { v1 , v2 , v3 , ... } ;

Aggiunta di valori:

È fondamentale ricordare che gli array C# possiedono una dimensione specifica. Se è richiesta una dimensione diversa, è necessario creare un nuovo array 'newArr' con la dimensione desiderata (lunghezza corrente + numero di nuovi valori). Aggiungi l'array originale 'OrgArr' al nuovo array e assegna i nuovi valori alle nuove posizioni nel nuovo array e aggiorna il riferimento al nuovo array.



Vettore. copia ( OrgArr , nuovoArr , OrgArr. Lunghezza ) ;

nuovoArr [ OrgArr. Lunghezza ] = 14 ; // nuovo valore

nuovoArr [ OrgArr. Lunghezza + 1 ] = 2 ; // nuovo valore

OrgArr = nuovoArr ; // Aggiorna il riferimento int[] NewArr = new int[OrgArr.Length + 2];

Gli elenchi offrono flessibilità in termini di gestione delle dimensioni. Quando un elenco viene inizializzato, inizia con una capacità iniziale, ma può espandersi automaticamente man mano che vengono aggiunti più elementi. Questa capacità di ridimensionamento dinamico consente agli elenchi di adattarsi alle mutevoli esigenze. Gli elenchi C# forniscono una funzione Add() per aggiungere i valori all'elenco. Ecco come aggiungere valori a un elenco C#:





Array e liste : Confronto di utilizzo in C #

Accesso ai valori

Si accede ai valori nei numeri dell'array utilizzando la notazione dell'indice [], ovvero utilizzando il numero dell'indice tra parentesi e viene salvato in un'altra variabile.

elemento di tipo = NomeArray [ indice ] ;

Per accedere ai valori in un elenco C#, è anche possibile utilizzare la notazione dell'indice [] insieme alla posizione dell'indice desiderata simile agli array.



elemento di tipo = Lista nome [ indice ] ;

Rimozione dei valori

Gli array hanno una lunghezza prestabilita. Pertanto, per rimuovere gli elementi, è necessario creare un nuovo array di dimensioni inferiori e copiare gli elementi esistenti. Questo può essere fatto utilizzando la funzione Array.Copy() come spiegato nella sezione 'Aggiunta di valori'. Negli elenchi C# rimuovere i valori è molto più semplice e intuitivo. La classe List fornisce un metodo “remove” che consente di rimuovere un valore specifico dall'elenco.

lista nome. Rimuovere ( elemento ) ;

Contare i valori

Per contare i valori in un array C#, puoi utilizzare l'attributo length dell'array. La proprietà length fornisce il numero totale di valori nell'array.

int contare = nomearray. Lunghezza ;

Per contare i valori in un elenco C#, è possibile utilizzare la funzionalità di 'conteggio' dell'elenco. Anche la quantità totale di elementi che risiedono attualmente nell'elenco viene restituita dall'attributo 'count'.

int contare = lista nome. Contare ;

Iterare i valori

Per scorrere i valori in un array C#, è possibile utilizzare un ciclo 'for' con la lunghezza dell'array come condizione del ciclo.

per ( int io = 0 ; io < NomeArray. Lunghezza ; io ++ ) {

tipo e = nomearray [ io ] ;

Consolle. Linea di scrittura ( È ) ;

}

Per scorrere i valori in un elenco C#, è possibile utilizzare un ciclo 'foreach' poiché semplifica il processo di iterazione eseguendo automaticamente l'iterazione sugli elementi.

per ciascuno ( digitare e in nomeelenco ) {

Consolle. Linea di scrittura ( È ) ;

}

Esempio 1: matrici C#

Il codice fornito dichiara e inizializza un array di numeri interi denominato 'Arr' con una lunghezza pari a 5 e assegna i valori ai suoi elementi. I valori assegnati agli elementi dell'array sono 11, 12, 13, 14 e 15. Il codice procede quindi a visualizzare gli elementi dell'array utilizzando un ciclo 'for'. Ogni componente viene visualizzato su una riga distinta utilizzando il metodo Console.WriteLine().

Dopo aver visualizzato gli elementi originali, il codice modifica l'elemento all'indice 2 assegnandogli un nuovo valore pari a 10. Successivamente, il codice visualizza l'array modificato scorrendo nuovamente gli elementi utilizzando un ciclo 'for'. Infine, il codice visualizza il numero totale di valori che risiedono nell'array utilizzando la proprietà 'Arr.Length' che restituisce la lunghezza dell'array.

utilizzando il sistema ;

manichino di classe {

statico vuoto Principale ( ) {

int [ ] Arr = nuovo int [ 5 ] { undici , 12 , 13 , 14 , quindici } ;

Consolle. Linea di scrittura ( 'Elementi:' ) ;

per ( int io = 0 ; io < Arr. Lunghezza ; io ++ )

{

Consolle. Linea di scrittura ( Arr [ io ] ) ;

}

Arr [ 2 ] = 10 ;

Consolle. Linea di scrittura ( 'Array modificato:' ) ;

per ( int io = 0 ; io < Arr. Lunghezza ; io ++ )

{

Consolle. Linea di scrittura ( Arr [ io ] ) ;

}

Consolle. Linea di scrittura ( 'Numero di elementi: ' + Arr. Lunghezza ) ;

}

}

Esempio 2: elenchi C#

Il codice fornito di seguito illustra l'utilizzo di un elenco C# per archiviare e manipolare una raccolta di numeri interi. Innanzitutto, il codice inizializza un elenco denominato 'Arr' con cinque numeri interi: 11, 12, 13, 14 e 15. Ciò si ottiene utilizzando la classe List e il relativo costruttore insieme a una sintassi di inizializzazione.

Successivamente, il programma stampa il messaggio 'Elementi:' e procede all'iterazione su ciascun elemento dell'elenco utilizzando un ciclo 'foreach'. Durante ogni iterazione, l'elemento corrente viene stampato sulla console utilizzando il metodo Console.WriteLine().

Successivamente il codice modifica il valore dell'indice 2 della lista assegnandogli il valore 10 (Arr[2] = 10). Questa riga modifica il terzo elemento dell'elenco da 13 a 10. Dopo la modifica, il programma stampa nuovamente il messaggio 'Elenco modificato:' e ripete l'elenco aggiornato, stampando ogni elemento sulla console. Il codice visualizza quindi il numero di valori nell'elenco utilizzando 'Arr.Count'. Questa proprietà restituisce il numero di elementi presenti nell'elenco che, nello scenario seguente, risulta essere 5.

Infine, il codice rimuove l'elemento con valore 4 dalla lista utilizzando il metodo Arr.Remove(4). Questo metodo cerca il valore specificato nell'elenco e rimuove la sua prima occorrenza. Infine, il programma stampa il messaggio “Elenco dopo la rimozione:” e scorre nuovamente l'elenco, visualizzando ogni elemento rimanente dopo l'operazione di rimozione.

utilizzando il sistema ;

utilizzando il sistema. Collezioni . Generico ;

manichino di classe {

statico vuoto Principale ( ) {

Elenco < int > Arr = nuovo Elenco < int > ( ) { undici , 12 , 13 , 14 , quindici } ;

Consolle. Linea di scrittura ( 'Elementi:' ) ;

per ciascuno ( int n nell'arr )

{

Consolle. Linea di scrittura ( N ) ;

}

Arr [ 2 ] = 10 ;

Consolle. Linea di scrittura ( 'Elenco modificato:' ) ;

per ciascuno ( int n nell'arr )

{

Consolle. Linea di scrittura ( N ) ;

}

Consolle. Linea di scrittura ( 'Numero di elementi: ' + Arr. Contare ) ;

Arr. Rimuovere ( 4 ) ;

Consolle. Linea di scrittura ( 'Elenco dopo la rimozione:' ) ;

per ciascuno ( int n nell'arr )

{

Consolle. Linea di scrittura ( N ) ;

}

}

}

Conclusione

Questa guida illustra le differenze di sintassi di base tra le matrici C# e gli elenchi C#. Gli array hanno una lunghezza fissa e sono accessibili tramite indice, mentre gli elenchi hanno dimensioni dinamiche e forniscono metodi aggiuntivi per aggiungere e rimuovere gli elementi. Oltre a ciò, abbiamo fornito i programmi di elenco C# che mostrano la dichiarazione, l'inizializzazione, l'accesso, la modifica, il conteggio e l'aggiunta degli elementi.