Translate

quarta-feira, 5 de dezembro de 2012

Vetores

Como você provavelmente já conhece, um vetor é um conjunto de ítens que podem ser acessados usando um índice numérico. Trata-se de um conjunto contíguo de ítens do mesmo tipo de dado, tal como um vetor de números, um vetor de strings, ou um vetor qualquer outro tipo de objeto.

A declaração e inicialização de vetores em C# é feita da seguinte maneira:


// Declara e inicializa um vetor de números inteiros com 
// capacidade para 3 elementos.
int[] numeros = new int[3];

// Declara e inicializa um vetor de strings.
string[] nomes = new string[100];

Quando declarando-se vetores C# o número colocado entre colchetes representa o número total de ítens. É importante observar que em C# os índices dos vetores são baseados em 0, significando que o primeiro elemento do vetor de números é acessado como numeros[0], o segundo elemento como numeros[1], e o terceiro elemento como numeros[2]. Portanto, apesar do vetor possuir três elementos, a tentativa de acessar o elemento numeros[3] resultaria em uma exceção, pois você está acessando uma região de memória que não pertence ao vetor.

Depois que você define um vetor você pode preencher cada um de seus elementos índice por índice tal como mostrado no trecho de código a seguir:

int[] numeros = new int[3];
numeros[0] = 10;
numeros[1] = 20;
numeros[2] = 30;

// Mostra os elementos do vetor.
foreach (int i in numeros)
{
  Console.WriteLine(i);
}

Se você declarar um vetor sem inicializar explicitamente cada índice, os elementos do vetor serão preenchidos com o valor default do tipo de dado do vetor. Por exemplo, os elementos de um vetor de números terão o valor default de 0 e os elementos de um vetor booleano terão o valor default de false.

Sintaxe de Inicialização de Vetores C# 

Além de preencher os elementos de um vetor ítem por ítem, C# permite que você inicialize vetores de uma forma mais direta, na qual você especifica cada ítem do vetor entre chaves:
static void InicializarVetor()
{

  // Inicialização de vetor com a palavra-chave new.
  string[] nomes = new string[] { "João", "Maria", "Rodrigo" };

  Console.WriteLine("nomes tem {0} elementos", nomes.Length);


  // Inicialização de vetor sem a palavra-chave new.
  bool[] vetorBools = { false, false, true };


  Console.WriteLine("
vetorBools tem {0} elementos",
    vetorBools.Length);

  // Inicializçaão de vetor com new e com o tamanho.
  int[] vetorInts = new int[4] { 17, 3, 55, 0 };


  Console.WriteLine("
vetorInts tem {0} elementos",
    vetorInts.Length); 
}


Quando utiliza essa sintaxe para iniciar vetores não é necessário informar o tamanho do vetor e o uso da palavra-chave new é opcional.

Nenhum comentário:

Postar um comentário