C # - Matrici
Un array memorizza una raccolta sequenziale di dimensioni fisse di elementi dello stesso tipo. Un array viene utilizzato per memorizzare una raccolta di dati, ma spesso è più utile pensare a un array come una raccolta di variabili dello stesso tipo archiviate in posizioni di memoria contigue.
Invece di dichiarare variabili individuali, come numero0, numero1, ... e numero99, dichiari una variabile di matrice come numeri e utilizzi numeri [0], numeri [1] e ..., numeri [99] per rappresentare variabili individuali. Un elemento specifico in un array è accessibile da un indice.
Tutti gli array sono costituiti da posizioni di memoria contigue. L'indirizzo più basso corrisponde al primo elemento e l'indirizzo più alto all'ultimo elemento.
Dichiarazione di array
Per dichiarare un array in C #, puoi usare la seguente sintassi:
datatype[] arrayName;
dove,
datatype viene utilizzato per specificare il tipo di elementi nell'array.
[] specifica il rango dell'array. Il rango specifica la dimensione dell'array.
arrayName specifica il nome dell'array.
Per esempio,
double[] balance;
Inizializzazione di un array
La dichiarazione di un array non inizializza l'array nella memoria. Quando la variabile array viene inizializzata, è possibile assegnare valori all'array.
Array è un tipo di riferimento, quindi è necessario utilizzare l'estensione newparola chiave per creare un'istanza dell'array. Per esempio,
double[] balance = new double[10];
Assegnazione di valori a un array
È possibile assegnare valori a singoli elementi dell'array, utilizzando il numero di indice, come -
double[] balance = new double[10];
balance[0] = 4500.0;
È possibile assegnare valori all'array al momento della dichiarazione, come mostrato -
double[] balance = { 2340.0, 4523.69, 3421.0};
Puoi anche creare e inizializzare un array, come mostrato -
int [] marks = new int[5] { 99, 98, 92, 97, 95};
Puoi anche omettere la dimensione dell'array, come mostrato -
int [] marks = new int[] { 99, 98, 92, 97, 95};
È possibile copiare una variabile di matrice in un'altra variabile di matrice di destinazione. In tal caso, sia la destinazione che la sorgente puntano alla stessa posizione di memoria -
int [] marks = new int[] { 99, 98, 92, 97, 95};
int[] score = marks;
Quando si crea una matrice, il compilatore C # inizializza in modo implicito ogni elemento della matrice su un valore predefinito a seconda del tipo di matrice. Ad esempio, per un array int tutti gli elementi vengono inizializzati su 0.
Accesso agli elementi dell'array
Si accede a un elemento indicizzando il nome dell'array. Questo viene fatto inserendo l'indice dell'elemento tra parentesi quadre dopo il nome dell'array. Per esempio,
double salary = balance[9];
Il seguente esempio, dimostra i concetti sopra menzionati dichiarazione, assegnazione e accesso agli array -
using System;
namespace ArrayApplication {
class MyArray {
static void Main(string[] args) {
int [] n = new int[10]; /* n is an array of 10 integers */
int i,j;
/* initialize elements of array n */
for ( i = 0; i < 10; i++ ) {
n[ i ] = i + 100;
}
/* output each array element's value */
for (j = 0; j < 10; j++ ) {
Console.WriteLine("Element[{0}] = {1}", j, n[j]);
}
Console.ReadKey();
}
}
}
Quando il codice precedente viene compilato ed eseguito, produce il seguente risultato:
Element[0] = 100
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109
Utilizzando il ciclo foreach
Nell'esempio precedente, abbiamo utilizzato un ciclo for per accedere a ciascun elemento dell'array. Puoi anche usare un fileforeach istruzione per iterare attraverso un array.
using System;
namespace ArrayApplication {
class MyArray {
static void Main(string[] args) {
int [] n = new int[10]; /* n is an array of 10 integers */
/* initialize elements of array n */
for ( int i = 0; i < 10; i++ ) {
n[i] = i + 100;
}
/* output each array element's value */
foreach (int j in n ) {
int i = j-100;
Console.WriteLine("Element[{0}] = {1}", i, j);
}
Console.ReadKey();
}
}
}
Quando il codice precedente viene compilato ed eseguito, produce il seguente risultato:
Element[0] = 100
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109
Matrici C #
Sono presenti alcuni importanti concetti relativi all'array che dovrebbero essere chiari a un programmatore C #:
Sr.No. | Concetto e descrizione |
---|---|
1 | Array multidimensionali C # supporta array multidimensionali. La forma più semplice dell'array multidimensionale è l'array bidimensionale. |
2 | Array frastagliati C # supporta matrici multidimensionali, che sono matrici di matrici. |
3 | Passaggio di array a funzioni È possibile passare alla funzione un puntatore a un array specificando il nome dell'array senza un indice. |
4 | Matrici di parametri Viene utilizzato per passare un numero sconosciuto di parametri a una funzione. |
5 | La classe Array Definita nello spazio dei nomi di sistema, è la classe base per tutti gli array e fornisce varie proprietà e metodi per lavorare con gli array. |