Declarando e Construindo Arrays


Declarando um Array

Arrays são declarados colocando o tipo do elemento que o array irá guardar, o qual pode ser um objeto ou um primitivo, seguido de colchetes do lado esquerdo ou direito do identificador.
Não é permitido colocar o tamanho do array na declaração. Deve-se definir um tamanho somente no momento da inicialização do array, porque a JVM só aloca espaço no momento em que o objeto (nesse caso um array) é construído.
É possível declarar também arrays multidimensionais, que na verdade são arrays de arrays.

import java.util.Date;

public class DeclaracaoArrays {
     
      /* os colchetes podem aparecer antes ou
       * depois do identificador, porém é mais
       * legível aparecer antes */
     
      //array de primitivos
      int[] array;
      int array2 [];
     
      //array de objetos
      Date[] arrayObj;
      Date arrayObj2[];
     
      //arrays multidimensionais
      String[][] mult;
      String mult2[][];
      String[] mult3[][];

      /* erro - só é permitido informar o
       * tamanho do array na construção e
       * não na declaração */
      int[5] array3;
     
}


Construindo um Array

Construir um array significa criar o objeto do array no heap utilizando a palavra-chave new. Para criar um array é necessário especificar seu tamanho; o tamanho do array é o número de elementos que o array irá guardar.

Construindo Arrays de uma Dimensão

A maneira mais fácil de criar um array é usando a palavra-chave new seguido do tipo do array, com um par de colchetes especificando seu tamanho.
Quando um array é construído, um objeto de array com a quantidade de elementos informada é criado no heap, e seus elementos são preenchidos com seus valores default.
Obs.: quando se trata de um array de objetos sendo construído, o construtor da classe não é chamado.

Construindo Arrays Multidimensionais

Arrays multidimensionais são arrays de arrays. Isso quer dizer que, por exemplo, um array do tipo int é um objeto do tipo array de int, no qual cada elemento guarda uma referência a outro array de int; somente a segunda referência, ou seja, cada um desses arrays de int guarda efetivamente o int.


public class ConstrucaoArrays {

      /* para construir um array é necessário
       * informar o seu tamanho (número de
       * elementos que irá guardar) */
      int[] array = new int[5];
     
      //construção de arrays de uma dimensão
      String[] nomes = new String[2];
     
      //construção de arrays de duas dimensões
      float[][] valores = new float[5][];
     
      /* erro - o tamanho do array deve ser
       * informado na construção */
      double[] precos = new double[];
           
}

Fonte: SCJP Sun Certified Programmer for Java 6 Study Guide

0 comentários:

Postar um comentário