Introdução às matrizes em C #

Uma matriz é um conjunto de objetos. Os elementos presentes em uma matriz são do mesmo tipo de dados. Pode ser int, float, char, etc. O conceito de Arrays em C # passa a existir para evitar o incômodo de armazenar valores diferentes criando variáveis ​​diferentes.

2356.32.541 1
0 01 1234

O índice de uma matriz é iniciado a partir de 0 e o índice de uma matriz será aumentado com base no tamanho específico da matriz. Se tivermos uma matriz de comprimento 5, a matriz começará no índice 0 e termina no índice 4. Portanto, o comprimento da matriz define o número de elementos nessa matriz.

Como a matriz funciona em c #?

Em C #, o comprimento da matriz pode ser fixo ou dinâmico. Em uma matriz de comprimento fixo, um número fixo de itens pode ser armazenado. No array dinâmico, o tamanho aumenta à medida que novos itens chegam ao array, pois a alocação de memória de um array é dinâmica. Nas matrizes, a memória da pilha armazena a variável da matriz, enquanto a pilha gerenciada armazena os elementos. Em C #, a matriz é derivada do sistema. Classe de matriz. Se tivermos uma matriz inteira, todos os elementos terão seus respectivos valores e, como uma matriz em C # é um tipo de referência, os elementos manterão uma referência aos objetos reais.

Como criar uma matriz em c #?

Sintaxe de uma matriz: data_type () name_of_array

1. Declaração de uma matriz

Código:

class Name
(
static void Main(string()args)
(
Int32() intarray; //array declaration
)
)

Explicação do código: Na declaração Array, a primeira parte é o tipo de dados que define o tipo de objetos em uma matriz. A segunda parte é () que define o número de objeto em uma matriz e, em seguida, é o nome da matriz que é int array nesse caso

2. Inicialização da matriz

Código:

class Name
(
static void Main(string()args)
(
Int32() Intarray; //array declaration
Intarray = new Int32(4); // array initialization
Intarray(0)= 23; // assigning values to the elements
Intarray(1)=5;
Intarray(2)=88;
Intarray(3)=6;
)
)

Explicação do código: Na inicialização da matriz, precisamos especificar o número de valores em uma matriz usando colchetes e atribuir esses valores a cada elemento de uma matriz. Então aqui intarray (0) significa que estamos atribuindo um valor na primeira posição, intarray (1) significa atribuir valores na segunda posição e assim por diante.

3. Exibindo valores da matriz

Código:

class Name
(
static void Main(string()args)
(
Int32() Intarray; //array declaration
Intarray = new Int32(4); //array initialization
Intarray(0)= 23; //assigning values to array
Intarray(1)=5;
Intarray(2)=88;
Intarray(3)=6;
Console.WriteLine(Intarray(0));
Console.WriteLine(Intarray(1));
Console.WriteLine(Intarray(2));
Console.WriteLine(Intarray(3));
Console.ReadKey();
)
)

Explicação do código: Console.WriteLine é um método para exibir cada valor de uma matriz no console.

Exemplos de matrizes

Exemplos e resultados em C # são exibidos abaixo

Exemplo 1

Código:

using System;
namespace ArrayDemo
(
class Name
(
static void Main(string() args)
(
Int32() Intarray; // array declaration
Intarray = new Int32(4); // array initialization
Intarray(0) = 23; // assigning values to the array element
Intarray(1) = 5;
Intarray(2) = 88;
Intarray(3) = 6;
Console.WriteLine(Intarray(0));
Console.WriteLine(Intarray(1));
Console.WriteLine(Intarray(2));
Console.WriteLine(Intarray(3));
Console.ReadKey();
)
)
)

No código acima, a matriz é declarada e inicializada com quatro elementos e Console.WriteLine exibe todos os valores.

Resultado:

Exemplo 2

Código:

using System;
namespace Demo
(
class Array
(
static void Main(string() args)
(
int() arr = new int(4) ( 10, 20, 30, 40 );
for (int i = 0; i < arr.Length; i++) // Traverse array elements
(
Console.WriteLine(arr(i));
)
)
)
)

No código acima, a matriz é inicializada e declarada com quatro elementos e, em seguida, o loop é usado para acessar os elementos da matriz.

Resultado:

Exemplo 3

Também podemos usar o foreach para acessar os elementos da matriz

Código:

using System;
namespace Demo
(
class Array
(
static void Main(string() args)
(
int() arr = new int(4) ( 10, 20, 30, 40 );
foreach (int i in arr)
(
Console.WriteLine(i);
)
)
)
)

Resultado:

Tipos de matriz em c #

Em C #, temos vários tipos de matrizes:

  1. Matriz de dimensão única.
  2. Matriz multidimensional.
  3. Matriz irregular.

Os exemplos acima são da matriz de dimensão única.

Matriz multidimensional

Em matrizes retangulares ou matrizes multidimensionais, os dados são armazenados em forma de tabela

Int(, ) intArray = new int(4, 3)

Neste, especificamos o tamanho da matriz com quatro linhas e três colunas.

1. Declaração de matrizes multidimensionais

int(, ) array = new int(3, 3); //declaration of 2D array
int(,, ) array=new int(3, 3, 3); //declaration of 3D array

2. Inicialização da matriz multidimensional

int(, ) array = new int(3, 3); //declaration of 2D array
array(0, 1)=10; //initialization
array(1, 2)=20;
array(2, 0)=30;

Exemplo de matriz multidimensional

Código:

using System;
namespace Demo
(
class Array
(
public static void Main()
(
int(, ) intArray = new int(3, 2)(
(1, 2),
(2, 4),
(4, 8)
);
Console.WriteLine(intArray(0, 0));
Console.WriteLine(intArray(0, 1));
Console.WriteLine(intArray(1, 0));
Console.WriteLine(intArray(1, 1));
Console.WriteLine(intArray(2, 0));
Console.WriteLine(intArray(2, 1));
)
)
)

Explicação do código: No código acima, linhas e colunas são especificadas com três linhas e quatro colunas e o Console.WriteLine exibe todos os valores.

Resultado:

Matriz irregular

Elementos de matrizes irregulares são "matriz" porque armazena diretamente a matriz.

1. Declaração da matriz irregular

int()() array = new int(3)();

O primeiro colchete informa sobre o tamanho e o segundo colchete informa sobre as dimensões da matriz.

2. Inicialização e atribuir valores às matrizes irregulares

array(0) = new int(4) ( 1, 2, 3, 4 );
array(1) = new int(5) ( 1, 2, 3, 4, 5 );

O tamanho dos elementos pode ser diferente.

Abaixo estão os exemplos da matriz irregular:

Exemplo 1

Código:

using System;
namespace Demo
(
class Array
(
public static void Main()
(
int()() array = new int(2)();// Declare the array
array(0) = new int() ( 1, 2, 6, 8 );// Initialize the array
array(1) = new int() ( 72, 51, 47, 23, 54, 13 );
// Traverse array elements
for (int i = 0; i < array.Length; i++)
(
for (int j = 0; j < array(i).Length; j++)
(
System.Console.Write(array(i)(j) + " ");
)
System.Console.WriteLine();
)
)
)
)

Resultado:

Exemplo 2

Código:

using System;
namespace Demo
(
class Array
(
public static void Main()
(
int()() array = new int(3)()(
new int() ( 51, 22, 43, 87 ),
new int() ( 2, 3, 4, 56, 94, 23 ),
new int() ( 4, 5 )
);
// Traverse array elements
for (int i = 0; i < array.Length; i++)
(
for (int j = 0; j < array(i).Length; j++)
(
System.Console.Write(array(i)(j) + " ");
)
System.Console.WriteLine();
)
)
)
)

Saída :

Método de matriz em c #

Os seguintes pontos são os seguintes:

  1. Limpar (matriz, Int32, Int32) : este método é usado para definir o intervalo do elemento como padrão, com base no tipo de elemento.
  2. Clone (): este método é usado para criar uma cópia do elemento.
  3. Copiar (matriz, matriz, Int32): este método é usado para copiar os elementos de uma matriz para outra matriz.
  4. Igual (Objeto): Este método basicamente verifica se o objeto mencionado é igual ao objeto atual.
  5. Classificar (matriz): este método é usado para classificar a matriz.
  6. CreateInstance (Type, Int32): este método é usado para criar uma matriz de um tipo, comprimento e tamanho específicos.
  7. ToString (): usado para exibir a representação de strings.
  8. GetType (): este método é usado para retornar o tipo de objeto.
  9. IndexOf (Array, Object): Este método é usado para pesquisar o objeto em particular e retornar o índice da primeira ocorrência em uma matriz 1D.
  10. Reverse (Array): esse método é usado para reverter a sequência dos elementos.
  11. SetValue (Object, Int32): Este método na matriz 1D é usado para definir o valor de um elemento.

Exemplo

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ArrayMethod
(
class Program
(
static void Main(string() args)
(
int() arr = new int(6) ( 5, 8, 9, 25, 0, 7 );
// Creating an empty array
int() arr2 = new int(6);
Console.WriteLine("length of first array: " + arr.Length); // length of array
Array.Sort(arr); //sorting array elements
Console.Write("Sorted array elements: ");
PrintArray(arr);
Array.Copy(arr, arr2, arr.Length); // copy elements of one array to other
Console.Write("Second array elements: ");
PrintArray(arr2);
Console.WriteLine("Get Index:\t(0)", Array.IndexOf(arr, 9)); // index of value
Array.Reverse(arr);
Console.Write("\nFirst Array elements in reverse order: "); // reverse the elements of array
PrintArray(arr);
Array.Clear(arr, 0, 6); //set default value of elements
PrintArray(arr);
)
static void PrintArray(int() arr)
(
foreach (int i in arr)
(
Console.Write("\t(0)", i);
)
Console.WriteLine("\n");
)
)
)

Explicação do código: O código acima mostra vários métodos da matriz na qual arr. Comprimento é usado para obter o comprimento igual a 6, Matriz. Classificação fornece os valores na forma classificada. Matriz. Copiar copia os valores da primeira matriz para a segunda matriz. Matriz. O reverso exibe a matriz na ordem inversa, enquanto Clear define os valores padrão dos elementos.

Resultado:

Conclusão

Portanto, é melhor declarar uma variável de matriz em vez de declarar muitas variáveis ​​diferentes, pois os elementos na memória são armazenados sequencialmente, o que a torna mais rápida. Além disso, é fácil atravessar, manipular e classificar os dados usando matrizes.

Artigos recomendados

Este é um guia para matrizes em C #. Aqui discutimos como criar matrizes em c #, tipos de matriz, métodos e exemplos. Você também pode consultar nossos outros artigos relacionados para saber mais.

  1. Comandos C #
  2. Funções C #
  3. Matriz vs Lista C #
  4. Matrizes em C ++
  5. Matriz multidimensional em C
  6. Matriz multidimensional em Python
  7. Matrizes em PHP
  8. Matrizes multidimensionais em C ++ com exemplos