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, o sotto forma di matrice.
È possibile dichiarare un array bidimensionale utilizzando la seguente sintassi:
main.cs
1datatype[][] 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
1int[,] numbers = new int[3,3];
Nel caso sopra, viene creata una nuova matrice bidimensionale di dimensione 3x3. Ciò significa che può contenere 9 numeri interi. È possibile inizializzare un array 2D utilizzando la seguente sintassi:
main.cs
12345datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };
Considerare l'esempio con valori reali:
main.cs
12345678910111213141516171819202122using 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 rappresenta 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. Si indicano semplicemente l'indice della riga e quello della colonna.
main.cs
1arrayName[row, column];
Ad esempio, se si desidera 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
123456789101112131415161718using 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
123int[,,] 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
123456int[,,] 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} } };
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Awesome!
Completion rate improved to 1.59
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, o sotto forma di matrice.
È possibile dichiarare un array bidimensionale utilizzando la seguente sintassi:
main.cs
1datatype[][] 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
1int[,] numbers = new int[3,3];
Nel caso sopra, viene creata una nuova matrice bidimensionale di dimensione 3x3. Ciò significa che può contenere 9 numeri interi. È possibile inizializzare un array 2D utilizzando la seguente sintassi:
main.cs
12345datatype [,] arrayName = { { element1, element2, ... }, { element1, element2, ...}, ... };
Considerare l'esempio con valori reali:
main.cs
12345678910111213141516171819202122using 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 rappresenta 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. Si indicano semplicemente l'indice della riga e quello della colonna.
main.cs
1arrayName[row, column];
Ad esempio, se si desidera 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
123456789101112131415161718using 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
123int[,,] 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
123456int[,,] 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} } };
Grazie per i tuoi commenti!