Programação
 › Algoritmo  › C/C++  › Java
Web
 › HTML/XHTML  › JavaScript  › PHP
Sistema Operacional
 › Comandos de DOS  › Windows  › Linux  › Mac/BSD
Office
 › Word / Writer  › Excel / Calc
Áreas do Site
 › Download  › Fórum  › Blog
Recomendamos
Computadores e Informática em Lisboa
TI Expert » Programação » Java » Vetores e Matrizes

Arrays

Arrays, também muito conhecidos como vetores, são variáveis que servem para guardar vários valores do mesmo tipo de forma uniforme na memória. Por exemplo, se tivemos que criar 20 variáveis do mesmo tipo que querem dizer a mesma coisa, nós não criaríamos -> int var1, var2, var3, var4, var5, ... ao invés disso, criaríamos apenas uma variável de array para guardar todos os 20 números de uma vez.

Como um array pode guardar vários valores temos que definir quantos valores ele deve guardar para que seja reservado o espaço necessário em memória.

Primeiramente, vamos aprender como declarar um array. Para declarar um array devemos especificar a classe ou o tipo de dado que será armazenado nele. Após isso, damos um nome a esse array. E, para finalizar, indicamos que ele é um array, simplesmente abrindo e fechando colchetes ( [ ] ). Portanto, se quiséssemos um array de números inteiros chamado meu array, declararíamos da seguinte forma:

int meuArray [];

Agora que já declaramos o array, devemos dar um tamanho a ele, para que seja reservado espaço suficiente em memória. Para fazermos isso, utilizaremos um instanciador chamado new.

New é muito importante, pois ele irá criar de fato o array.

Para indicarmos o tamanho usamos o instanciador new, depois o tipo de dado do array e entre colchetes o tamanho do array. Tomando o exemplo acima, vamos indicar que meuArray terá o tamanho 4. Então, a linha de cima ficaria:

int meuArray[] = new int [4];

Na memória é representado da seguinte forma:

Exemplo de um array na memória

Uma única variável com 4 espaços nos quais podem ser guardados números inteiros.

Acessando uma posição no Array

Agora, para acessarmos um local específico dessa memória devemos indicar entre colchetes a posição desejada no array que chamamos de index. O importante mesmo é saber que não importa o tamanho do array, o index (número que indica a posição) sempre começa em 0. Ou seja, um array de tamanho 20 vai da posição 0 a 19, um array de tamanho 180 vai da posição 0 a 179. Portanto, um array de tamanho 4 vai da posição 0 a 3.

posições (index) dos espaços de memória em um array

Agora, se quisermos atribuir os valores 540 na posição 1 e 8456 na posição 3, faríamos: meuArray [1]=540; meuArray [3]=8456.

Valores sendo atribuídos as posições 1 e 3 do array

Não podemos nunca nos esquecer que o limite do array é sempre seu tamanho menos 1. Usando o exemplo: array de tamanho 4, posição máxima é 3 (pois 4-1=3). Então, se atribuirmos um valor a posição 4 ocorrerá um erro. Resumidamente, jamais poderíamos fazer meuArray [4]=200.

Valor 200 sendo atribuído a uma posição inexistente no array

Inicialização direta de Array

Podemos inicializar um array diretamente, sem a necessidade de instanciá-lo com new. Para isso, após a declaração do array, basta colocar seus valores em chaves, separando cada valor por vírgula. Por exemplo, se quiséssemos inicializar o meuArray com os valores 450, 200, 1000, 700, faríamos:

int meuArray [] = { 450, 200, 1000, 700 };

Matrizes

Matrizes são arrays multidimensionais, ou seja, eles não são totalmente lineares, e sim, geométricos.

Enquanto um array tem apenas uma linha com vários valores, uma matriz pode, por exemplo, tem várias linhas com vários valores, que comumente chamamos de linhas e colunas.

Para criarmos um array multidimensional (ou matriz), procedemos da mesma forma que um array normal, porém com mais um dimensionador (os colchetes). Então, se quisermos criar um array (matriz) bidimensional com 3 linha e 5 colunas, faríamos:

int minhaMatriz [][] = new int [3][5];

Na memória é representado como:

Exemplo de um array na memória

Isso também pode ser feito para adquirirmos o formato de matriz que quisermos. Ou seja, se fosse uma matriz tridimensional, bastaria ter três dimensionadores, se fosse 4D, então, 4 dimensionadores, se fosse 5D (apesar de geometricamente difícil de imaginar) seriam 5 dimensionadores. E assim por diante...

Creative Commons License
Autor: Denys William Xavier
Este artigo está sob Licença Creative Commons.

Faça o download da versão em PDF Indique nosso site Gostou?
Indique nosso site!
Este artigo foi
lido 129288 vezes
Bookmark e Compartilhe

Páginas Relacionadas

Enquete
O Google Chrome OS irá desbancar o Microsoft Windows 7?
» ProgramaçãoAlgorítmo | C/C++ | Java

» WebHTML/XHTML | JavaScript | PHP

» Sistema OperacionalComandos de DOS | Windows | Linux | Mac/BSD

» OfficeWord/Wirter | Excel/Calc

» Áreas do SiteDownloads | Fórum | Blog