Buscar

Curso C# Básico - 13 - Vetores ou Arrays e Matrizes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

13 – Vetores ou arrays e matrizes
Você já deve ter ouvido falar sobre vetores e matrizes na escola. Em programação também se lida com esses elementos, que são conhecidos como array unidimensional (vetores), bidimensional (matrizes) e multidimensional. Aprenda um pouco sobre cada um deles: Em C#, os arrays são objetos cuja classe-base é System.Array.
Vetores ou arrays são estruturas de dados capazes de armazenar múltiplos valores. Cada valor pode ser localizado por uma “chave”; no caso dos arrays, seria o índice correspondente à sua posição.
13.1 – Declarando arrays
Para armazenar uma sequência de 10 números, até o momento foi conhecida apenas uma maneira:
Mas, dessa forma, o código não ficará muito legível... Então, a melhor solução seria assim:
Pronto, este é um array em C#! Existem outras formas de inicializar um array quando a declaração é feita:
ou...
ou...
Como você pode notar, quando se declara um array é necessário utilizar os colchetes []. Por exemplo:
Sendo que se pode, no momento da declaração, informar o número de elementos:
Note que é necessário utilizar o new. Se ele não fosse utilizado, ocorreria um erro de compilação, pois nosso vetor ou array estaria declarado de maneira errada.
13.2 – Definindo o número de elementos do array e acessando seus elementos
Quando se inicializa o array na declaração não é obrigatório informar o número de elementos. Também não é obrigatório quando ele é só declarado. Mas, para utilizá-lo depois da declaração, é preciso informar o número de elementos, que pode ser feito da seguinte maneira:
Com a declaração acima, você tem um array chamado arrInt do tipo int e que pode armazenar até 10 elementos do tipo int.
Para se acessar os elementos dentro de nosso array, você deve utilizar o índice correspondente à cada posição. O primeiro elemento dentro de um array é identificado pelo índice 0, o segundo pelo índice 1, e assim sucessivamente. Repare no código abaixo.
Repare que, para fazermos a atribuição de um valor para uma posição do array de inteiros, nós precisamos especificar o índice entre colchetes e utilizar o sinal de atribuição como se fossemos fazer a atribuição à uma variável “normal”. Na hora de pegar o conteúdo presente, também devemos especificar o índice da posição da qual precisamos recuperar o valor. Também podemos utilizar como se fosse uma variável inteira “convencional”.
Não se esqueça: as posições dos vetores em C# (e na maioria das linguagens) começa com a posição 0. No exemplo do arrInt, temos um vetor de 10 posições, onde a primeira posição é a posição 0 (não a posição 1) e a última é a posição 9 (não a posição 10).
13.3 – Arrays como objetos
No C#, arrays são objetos e não apenas regiões endereçáveis de memória contígua como em C e C++. Isso nos permite utilizar as propriedades, e outros membros da classe Array. Um exemplo disso é a propriedade Length para obter o comprimento de uma matriz:
A classe System.Array fornece vários outros métodos e propriedades, como:
Rank: Propriedade que retorna o número de dimensões de um array multidimensional (que veremos a frente). Exemplo:
Length: Propriedade que retorna o número total de elementos de todas as dimensões de um array multidimensional. Exemplo:
GetLenght: O método retorna o número total de elementos de uma dimensão específica do array. Recebe como parâmetro um número inteiro que corresponde ao número da dimensão da qual se deseja saber o total de elementos. A numeração das dimensões começa por zero. Exemplo:
Reverse: É um método estático cujo objetivo é inverter a ordem dos elementos do array. Essa inversão pode ser completa ou parcial, indicando o índice inicial e final para a inversão do array. Exemplo:
Sort: Ordena o array passado como parâmetro. Exemplo:
IndexOf: Retorna a posição de um elemento no array, se não for encontrado é retornado -1. Exemplo:
Matrizes multidimensionais
Matrizes podem ter mais de uma dimensão. Por exemplo, a declaração a seguir cria uma matriz bidimensional de quatro linhas e duas colunas:
Você pode inicializar a matriz na declaração conforme mostrado no exemplo a seguir:
13.4 – Matrizes ou arrays multidimensionais
Uma matriz é um “vetor de vetores”. Ou seja, é como se fosse um vetor que possui vários vetores dentro. Um bom exemplo de matriz é uma planilha Excel.
Repare em uma planilha Excel: cada linha é como se fosse um vetor. A planilha em si também pode ser considerada um vetor: um vetor que contém vários outros vetores internamente (que é cada linha da planilha).
Matrizes, assim como vetores, também tem seus elementos localizados pela especificação dos índices do elemento.
Uma matriz convencional (matriz regular) é declarada da seguinte forma:
Nesse caso, criamos uma matriz quadrada, que possui duas linhas e duas colunas. É como se ela possuísse dois vetores de duas posições “um embaixo do outro”.
O processo para acessar as posições e atribuir valores a elas é bem similar ao processo para vetores. Observe o código:
Não se esqueça: assim como nos vetores, os índices de linha e coluna de uma matriz também começam em zero!
13.5 – Matrizes irregulares
Uma matriz irregular é uma matriz cujos elementos são vetores diferentes entre si. Os elementos de uma matriz irregular podem ser de dimensões e tamanhos diferentes.
A seguir, há uma declaração de uma matriz dimensional única que tenha três elementos, cada um deles é uma matriz dimensional única (outro nome para vetores) de inteiros:
Antes de usar mi, seus elementos devem ser inicializados. É possível inicializar os elementos desta forma:
Cada um dos elementos é uma matriz dimensional única de inteiros. O primeiro elemento é uma matriz de 2 inteiros, o segundo é uma matriz de 4 inteiros, e o terceiro é uma matriz de 6 inteiros.
Também é possível usar inicializadores para preencher os elementos da matriz com valores, caso em que não precisa informar o tamanho de matriz. Por exemplo:
E também podemos inicializar a matriz na declaração da forma abaixo:
Uma matriz irregular é uma matriz de vetores e, portanto, seus elementos são tipos de referência e são inicializados para null.
O método Length retorna o número de matrizes contidas na matriz irregular. Por exemplo, supondo que tenhamos declarado a matriz anterior, esta linha:
Retornará um valor de 3.
Para saber o tamanho de uma linha:
Retornará um valor de 2.
Vídeo Aula 1
Vídeo Aula 2

Continue navegando