Tutorial de array C#: criar, declarar, inicializar
⚡ Resumo Inteligente
Em C#, os arrays armazenam uma coleção de tamanho fixo de elementos que compartilham o mesmo tipo de dados sob um único nome de variável. Cada elemento é indexado a partir de zero, o que torna a declaração, inicialização e acesso a valores rápidos e previsíveis.
O que é um array em C#?
Uma matriz é usada para armazenar uma coleção ou série de elementos. Esses elementos serão do mesmo tipo.
Por exemplo, se você tivesse uma matriz de valores inteiros, a matriz poderia ser uma coleção de valores como [1, 2, 3, 4]. Aqui o número de elementos na matriz é 4.
Matrizes são úteis quando você deseja armazenar uma coleção de valores do mesmo tipo. Então, em vez de declarar um variável para cada elemento, você pode declarar apenas uma variável.
Esta variável apontará para um array ou lista de elementos, que será responsável por armazenar os elementos do array.
Vejamos como podemos trabalhar com arrays em C#. Em nosso exemplo, declararemos um array de números inteiros e trabalharemos com eles de acordo.
Observe que todo o código abaixo está sendo criado no arquivo Program.cs.
Passo 1) Declarando um array – O primeiro passo é declarar um array. Vamos ver como podemos conseguir isso com o exemplo de código abaixo.
Code Explicação:-
- A primeira parte é a tipo de dados. Ele especifica o tipo de elementos usados no array. Portanto, em nosso caso, estamos criando um array de números inteiros.
- A segunda parte [ ], que especifica a classificação da matriz. (A classificação é um espaço reservado que especifica o número de elementos que a matriz conterá)
- O próximo é o nome do array que no nosso caso é 'valores'. Observe que você vê um sublinhado verde ondulado, não se preocupe com isso. Isso é apenas .Net dizendo que você declarou um array, mas não o usou em lugar nenhum.
Passo 2) A próxima etapa é inicializar o array. Aqui vamos especificar o número de valores que o array conterá. Também atribuiremos valores a cada elemento do array.
Code Explicação:-
- Primeiro, estamos definindo o número de elementos que o array conterá como 3. Portanto, entre colchetes, estamos dizendo que o array conterá 3 elementos.
- Em seguida, atribuímos valores a cada elemento da matriz. Podemos fazer isso especificando o nome da variável + a posição do índice na matriz. Assim, `values[0]` significa que estamos armazenando um valor na primeira posição da matriz. Da mesma forma, para acessar a segunda posição, usamos a notação `values[1]` e assim por diante.
Observação: – Em Arrays, a posição do índice começa em 0.
Passo 3) Vamos agora exibir os elementos individuais do array no Console. Vamos adicionar o código abaixo para conseguir isso.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Int32[] value; value=new Int32[3]; value[0]=1; value[1]=2; value[2]=3; Console.WriteLine(value[0]); Console.WriteLine(value[1]); Console.WriteLine(value[2]); Console.ReadKey(); } } }
Code Explicação:-
Esta é a parte simples em que apenas usamos o método Console.WriteLine para enviar cada valor do elemento para o console.
Observe que, novamente, estamos acessando cada elemento com a ajuda do nome da variável do array junto com a posição do índice.
Se o código acima for inserido corretamente e o programa for executado, a seguinte saída será exibida.
Saída:
Na saída, você pode ver todos os valores da matriz sendo exibidos no Console.
Como percorrer um array em C# usando foreach
Ler cada elemento pelo seu índice funciona, mas torna-se tedioso quando um array contém muitos valores. O loop `foreach` oferece uma maneira mais limpa de visitar cada elemento de um array em ordem, sem... tracrei, uma variável de índice você mesmo.
A instrução `foreach` pega cada item da matriz um de cada vez e o copia para uma variável de loop. Em seguida, você usa essa variável dentro do corpo do loop. Como o loop para automaticamente no último elemento, o `foreach` elimina o risco de ler além do final da matriz.
using System; namespace DemoApplication { class Program { static void Main(string[] args) { Int32[] values = new Int32[3] {1, 2, 3}; foreach (Int32 item in values) { Console.WriteLine(item); } Console.ReadKey(); } } }
O exemplo acima declara e inicializa um array de três inteiros e, em seguida, percorre-o com um loop `foreach`. A cada iteração, a variável item recebe o próximo valor e Console.WriteLine o imprime. A saída são os números 1, 2 e 3 em linhas separadas.
Pontos-chave a lembrar sobre o uso de foreach com arrays:
- A variável de loop é somente leitura, portanto, o método `foreach` é mais adequado para ler valores do que para alterá-los diretamente.
- Para modificar elementos enquanto olhapingEm vez disso, use um loop for com um índice.
- O método `foreach` funciona com arrays unidimensionais, arrays multidimensionais e qualquer coleção que suporte iteração.
Matrizes multidimensionais em C#
Os arrays mostrados até agora são unidimensionais, ou seja, armazenam uma lista simples de valores. O C# também suporta arrays multidimensionais, que organizam os elementos em uma grade de linhas e colunas. Um array bidimensional é a forma mais comum e adequada para dados como matrizes, tabuleiros de jogos e tabelas.
Você declara um array bidimensional colocando uma vírgula dentro dos colchetes. Cada vírgula extra adiciona uma dimensão, então `int[,]` é bidimensional e `int[,,]` é tridimensional. Os elementos são acessados com um índice por dimensão.
using System; namespace DemoApplication { class Program { static void Main(string[] args) { int[,] matrix = new int[2, 2] { {1, 2}, {3, 4} }; Console.WriteLine(matrix[0, 0]); Console.WriteLine(matrix[1, 1]); Console.ReadKey(); } } }
Aqui, a matriz de array contém duas linhas e duas colunas. O elemento `matrix[0, 0]` retorna 1 e `matrix[1, 1]` retorna 4. O número de dimensões é fixo quando o array é declarado, enquanto o tamanho de cada dimensão é definido quando o array é criado.
C# Matrizes Irregulares
Um array irregular é um array cujos elementos são, eles próprios, arrays. Ao contrário de um array multidimensional retangular, cada array interno pode ter um comprimento diferente, razão pela qual um array irregular é frequentemente chamado de array de arrays. Essa flexibilidade é útil quando as linhas naturalmente contêm quantidades diferentes de valores.
Você declara um array irregular com dois conjuntos de colchetes e, em seguida, cria cada array interno separadamente. O exemplo a seguir constrói um array irregular onde a primeira linha contém três valores e a segunda linha contém dois.
using System; namespace DemoApplication { class Program { static void Main(string[] args) { int[][] jagged = new int[2][]; jagged[0] = new int[] {1, 2, 3}; jagged[1] = new int[] {4, 5}; Console.WriteLine(jagged[0][2]); Console.WriteLine(jagged[1][1]); Console.ReadKey(); } } }
A expressão jagged[0][2] lê o terceiro elemento da primeira linha, que é 3, e jagged[1][1] lê o segundo elemento da segunda linha, que é 5. Como cada linha é um array separado, os arrays irregulares usam a memória de forma eficiente quando os comprimentos das linhas variam, embora precisem de uma etapa extra para inicializar cada array interno.





