HOWTO · Csharp

Differenza tra una matrice irregolare e una matrice multidimensionale in C#

Un array frastagliato può avere array di dimensioni diverse su ogni indice, mentre un array multidimensionale può avere solo array delle stesse dimensioni su ogni indice.

In questa pagina

Questo tutorial discuterà le differenze e le somiglianze tra una matrice frastagliata e una matrice multidimensionale in C#.

Array frastagliati in C#

Un array irregolare è un array di array in C#. Può costituire array di diverse dimensioni al suo interno. L’esempio di codice seguente mostra come dichiarare una matrice frastagliata in C#.

namespace jagged_array_vs_multidimensional_array {
  class Program {
    static void Main(string[] args) {
      int[][] jaggedArray = new int [3][];
      jaggedArray[0] = new int[1];
      jaggedArray[1] = new int[2];
      jaggedArray[2] = new int[3];
    }
  }
}

Nel codice precedente, abbiamo creato l’array jagged jaggedArray di dimensione 3, il che significa che jaggedArray è un array di 3 array. Questi 3 array sono all’indice 0, 1 e 2 del jaggedArray. È chiaro dall’esempio che tutti questi array hanno dimensioni diverse.

Array multidimensionali in C#

Un array multidimensionale è un array rettangolare in C#. Può avere solo un numero fisso di elementi in ciascuna dimensione. L’esempio di codice seguente mostra come dichiarare una matrice multidimensionale in C#.

namespace jagged_array_vs_multidimensional_array {
  class Program {
    static void Main(string[] args) {
      int[,] mArray = new [3, 3]
    }
  }
}

Nel codice sopra, abbiamo creato l’array multidimensionale mArray con la dimensione 3,3, il che significa che ha tre array interni e ognuno dei quali ha una dimensione di 3 elementi.

Array frastagliati vs array multidimensionali in C#

Gli array frastagliati dovrebbero essere preferiti rispetto agli array multidimensionali convenzionali a causa della loro flessibilità in C#. Ad esempio, se dobbiamo memorizzare gli hobby di una persona, l’approccio preferito sarebbe usare un array frastagliato perché non tutti hanno lo stesso numero di hobby. La stessa cosa vale per gli interessi e molte altre cose.