Declarando multidimensionais arrays em java
Novembro 24, 2011
Publicar um comentário
Array Multidimensional
Uma coisa importante, é lembra que array em java são meramente objetos, isso é são construídos pelo operador new
// aqui nos temos um array dentro do outro
// isso só significa que, em determinada posição do primeiro array[]
// temos um ponteiro que aponta para outro array[]
// entretando eles ficam aninhados
// isso é, o segundo array só é acessível pelo primeiro
String [] [] nomeDoSeuArray = new String[][]{ {"seusDiasEmDuasLinguas"}, {"seuDiaEmPortugues", "yourDayInEnglish"} } ;
Array em java também são homogêneos isto é, são sempre do mesmo tipo ( para o caso de tipos primitivos ) e ou que possam passar no teste é-um da Orientação por Objetos
para testar essa condição em java, tente:
if (nomeDoSeuArray[0][1] instanceof String) {
String eString = (String) nomeDoSeuArray[0][1];
}
o código abaixo tenta explicar com comentário no seu contexto, como funciona a alocações de posições em memória
dos objetos construídos.
// é necessário informar a posicao do primeiro array
// que aponta pra o segundo, nesse caso a primeira posição que é igual a 0
System.out.println("|"+nomeDoSeuArray[0][0]); // acessando a chave do seu array
System.out.println("|->"+nomeDoSeuArray[1][0]); // acessando seu seuDiaEmPortugues
// perceba que na segunda posição do nomeDoSeuArray no caso representada pelo numero 1
// apenas aponta para outro array. logo eu capturo aqui tbm a segunda posicao do array anhinado.
System.out.println("|->"+nomeDoSeuArray[1][1]); // acessando seu yourDayInEnglish
Caso tudo funcione corretamente no seu ambiente sua saída deve ser algo próximo de:
|seusDiasEmDuasLinguas
|->seuDiaEmPortugues
|->yourDayInEnglish
