Diferença entre um array denteada e um array multidimensional em C#

Muhammad Maisam Abbas 16 fevereiro 2024
  1. Matrizes irregulares em C#
  2. Matrizes multidimensionais em C#
  3. Matrizes denteadas versus matrizes multidimensionais em C#
Diferença entre um array denteada e um array multidimensional em C#

Este tutorial discutirá as diferenças e semelhanças entre um array irregular e um array multidimensional em C#.

Matrizes irregulares em C#

Uma matriz denteada é um array de arrayes em C#. Ele pode constituir matrizes de tamanhos diferentes. O exemplo de código a seguir nos mostra como podemos declarar um array irregular em 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];
    }
  }
}

No código acima, criamos o array irregular jaggedArray de tamanho 3, o que significa que o jaggedArray é um array de 3 arrays. Essas 3 matrizes estão no índice 0, 1 e 2 do jaggedArray. É claro a partir do exemplo que todas essas matrizes são de tamanhos diferentes.

Matrizes multidimensionais em C#

Uma matriz multidimensional é um array retangular em C#. Ele só pode ter um número fixo de elementos em cada dimensão. O exemplo de código a seguir nos mostra como podemos declarar um array multidimensional em C#.

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

No código acima, criamos o array multidimensional mArray com o tamanho 3,3, o que significa que ele tem três arrays internos e cada um deles tem um tamanho de elementos 3.

Matrizes denteadas versus matrizes multidimensionais em C#

As matrizes denteadas devem ser preferidas às matrizes multidimensionais convencionais devido à sua flexibilidade em C#. Por exemplo, se tivermos que armazenar os hobbies de uma pessoa, a abordagem preferencial seria usar um array denteada porque nem todos têm o mesmo número de hobbies. A mesma coisa vale para interesses e muitas outras coisas.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artigo relacionado - Csharp Array