Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Array Multidimensionali | Section
Fondamenti di C#

Array Multidimensionali

Scorri per mostrare il menu

Gli array possono anche contenere altri array al loro interno. Tali array sono chiamati array multidimensionali. Questi sono utili quando si desidera memorizzare i dati in forma tabellare, con righe e colonne, oppure sotto forma di matrice.

Possiamo dichiarare un array bidimensionale utilizzando la seguente sintassi:

main.cs

main.cs

1
datatype[][] arrayName = new datatype[lengthX, lengthY];

L'array creato utilizzando la sintassi sopra avrà una lunghezza (dimensione) pari a lengthX e ciascun elemento sarà un array di dimensione lengthY:

main.cs

main.cs

1
int[,] numbers = new int[3,3];

Nel caso sopra, creiamo una nuova matrice bidimensionale di dimensione 3x3. Significa che può contenere 9 numeri interi. Possiamo inizializzare un array 2D utilizzando la seguente sintassi:

main.cs

main.cs

12345
datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };

Considera l'esempio con valori reali:

main.cs

main.cs

12345678910111213141516171819202122
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; // Displaying the array foreach (int number in numbers) { Console.Write(number + " "); } } } }

Quanto sopra è una matrice 3x4 e può contenere 12 elementi. L'illustrazione seguente mostra una matrice 3x3 in forma visualizzata:

Indicizzazione negli array multidimensionali è simile a quella degli array normali. Basta specificare l'indice della riga e della colonna.

main.cs

main.cs

1
arrayName[row, column];

Ad esempio, se vogliamo accedere al valore 6 dall'array numbers (mostrato nell'illustrazione), si utilizza l'elemento all'indice [2][2], che corrisponde al secondo indice di riga e al secondo indice di colonna.

main.cs

main.cs

123456789101112131415161718
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; Console.WriteLine(numbers[1, 2]); // Output: 7 } } }

Sono possibili anche array a dimensioni superiori aggiungendo virgole extra alla sintassi di dichiarazione:

main.cs

main.cs

123
int[,,] myArray3D = new int[3, 4, 5]; int[,,,] myArray4D = new int[5, 4, 9, 10]; // Similarly more complex ones are possible as well using the same pattern

Nel codice sopra, myArray3D avrà 60 elementi (3x4x5), mentre myArray4D avrà 1800 elementi (5x4x9x10).

Di seguito è riportato come si inizializza un array 3D:

main.cs

main.cs

123456
int[,,] numbers = { { {1, 2, 3}, { 4, 5, 6 }, {7, 8, 9} }, { {10, 11, 12}, {13, 14, 15}, {16, 17, 18} }, { {19, 20, 21}, {22, 23, 24}, {25, 26, 27} } };
question mark

Qual è il codice corretto per accedere all'elemento "Pumpkin" dell'array foods:

Seleziona la risposta corretta

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 47

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Array Multidimensionali

Gli array possono anche contenere altri array al loro interno. Tali array sono chiamati array multidimensionali. Questi sono utili quando si desidera memorizzare i dati in forma tabellare, con righe e colonne, oppure sotto forma di matrice.

Possiamo dichiarare un array bidimensionale utilizzando la seguente sintassi:

main.cs

main.cs

1
datatype[][] arrayName = new datatype[lengthX, lengthY];

L'array creato utilizzando la sintassi sopra avrà una lunghezza (dimensione) pari a lengthX e ciascun elemento sarà un array di dimensione lengthY:

main.cs

main.cs

1
int[,] numbers = new int[3,3];

Nel caso sopra, creiamo una nuova matrice bidimensionale di dimensione 3x3. Significa che può contenere 9 numeri interi. Possiamo inizializzare un array 2D utilizzando la seguente sintassi:

main.cs

main.cs

12345
datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };

Considera l'esempio con valori reali:

main.cs

main.cs

12345678910111213141516171819202122
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; // Displaying the array foreach (int number in numbers) { Console.Write(number + " "); } } } }

Quanto sopra è una matrice 3x4 e può contenere 12 elementi. L'illustrazione seguente mostra una matrice 3x3 in forma visualizzata:

Indicizzazione negli array multidimensionali è simile a quella degli array normali. Basta specificare l'indice della riga e della colonna.

main.cs

main.cs

1
arrayName[row, column];

Ad esempio, se vogliamo accedere al valore 6 dall'array numbers (mostrato nell'illustrazione), si utilizza l'elemento all'indice [2][2], che corrisponde al secondo indice di riga e al secondo indice di colonna.

main.cs

main.cs

123456789101112131415161718
using System; namespace ConsoleApp { internal class Program { static void Main(string[] args) { int[,] numbers = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } }; Console.WriteLine(numbers[1, 2]); // Output: 7 } } }

Sono possibili anche array a dimensioni superiori aggiungendo virgole extra alla sintassi di dichiarazione:

main.cs

main.cs

123
int[,,] myArray3D = new int[3, 4, 5]; int[,,,] myArray4D = new int[5, 4, 9, 10]; // Similarly more complex ones are possible as well using the same pattern

Nel codice sopra, myArray3D avrà 60 elementi (3x4x5), mentre myArray4D avrà 1800 elementi (5x4x9x10).

Di seguito è riportato come si inizializza un array 3D:

main.cs

main.cs

123456
int[,,] numbers = { { {1, 2, 3}, { 4, 5, 6 }, {7, 8, 9} }, { {10, 11, 12}, {13, 14, 15}, {16, 17, 18} }, { {19, 20, 21}, {22, 23, 24}, {25, 26, 27} } };
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 47
some-alt