Mostrando postagens com marcador Array. Mostrar todas as postagens
Mostrando postagens com marcador Array. Mostrar todas as postagens

terça-feira, 13 de janeiro de 2015

ArrayList principais métodos

O que é um Array e como declarar aqui : Declarando um ArrayList

Usando o ArrayList:

ArrayList<String> cafes = new ArrayList<String> ();

Após declar o ArrayList "cafes"que armazenará Strings, adicionamos o tipo/nome do café da seguinte maneira:

cafes.add("Cappuccino");

Existe um método do ArrayList chamado 'toArray()' que coloca todos os elementos de um ArrayList em um Array. Ou seja: cafes.toArray() é um Array! Porém, já vimos que existe um método 'toString' da classe Arrays que retorna uma String com os elementos de um Array. Vamos usar esse método parar exibir todos os elementos do ArrayList, que transformamos em Array através do método 'toArray()':

Arrays.toString( cafes.toArray() );

Vamos adicionar o segundo café, "Expresso" e imprimir, usando o mesmo método. Note que quando usamos 'add', sempre adicionamos o elemento pro fim da ArrayList. Confirme isso agora adicionando o café "Macchiado" e veja que ele ficará depois de "Expresso".

Vamos pegar o primeiro elemento, o elemento '0', através do método 'get':


cafes.get(0);

Note que é o café "Cappuccino", pois ele foi o primeiro a ser adicionado.Vamos adicionar o "Mocha" na posição do "Cappuccino", ou seja, na posição '0':


cafes.add(0,"Mocha");
ou
cafes.add( cafes.indexOf("Cappuccino"), "Mocha");

O método 'indexOf' retorna o índice em que ocorre "Cappuccino". Para saber o tamanho que tem seu ArrayList, basta usar o método 'size()':

cafes.size();

Para remover o "Mocha" por exemplo, usamos o método remove:

cafes.remove("Mocha");

E para remover tudo utilize o clear:

cafes.clear();

Código:
import java.util.ArrayList;
import java.util.Arrays;

public class arrayLists{
    
    public static void main(String[] args){
            ArrayList<String> cafes = new ArrayList<String> ();
            
            cafes.add("Cappuccino");
            System.out.print( "Adicionando o café Cappuccino: " );
            System.out.println( Arrays.toString( cafes.toArray() ) );
            
            cafes.add("Expresso");
            System.out.print( "Adicionando o café Expresso: " );
            System.out.println( Arrays.toString( cafes.toArray() ) );
            
            cafes.add("Macchiato");
            System.out.print( "Adicionando o café Macchiato: " );
            System.out.println( Arrays.toString( cafes.toArray() ) );
            
            System.out.print( "Quem está na índice 0: " );
            System.out.println( cafes.get(0) );
            
            System.out.print( "Adicionando Mocha onde estava o Cappuccino: " );
            cafes.add( cafes.indexOf("Cappuccino"), "Mocha");
            System.out.println( Arrays.toString( cafes.toArray() ) );
            
            System.out.print( "Número de elementos na lista: " );
            System.out.println( cafes.size() );
            
            System.out.print( "Removendo o café Mocha: " );
            cafes.remove("Mocha");
            System.out.println( Arrays.toString( cafes.toArray() ) );
            
            System.out.print( "Removendo todos os cafés: " );
            cafes.clear();
            System.out.println( Arrays.toString( cafes.toArray() ) );
        }

}

Saída:

Adicionando o café Cappuccino: [Cappuccino]
Adicionando o café Expresso: [Cappuccino, Expresso]
Adicionando o café Macchiato: [Cappuccino, Expresso, Macchiato]
Quem está na índice 0: Cappuccino
Adicionando Mocha onde estava o Cappuccino: [Mocha, Expresso, Macchiato]
Número de elementos na lista: 3
Removendo o café Mocha: [Expresso, Macchiato]
Removendo todos os cafés: []

Melissa Lobo.

terça-feira, 3 de junho de 2014

Array (Vetor)

Em Java, os Arrays são objetos que armazenam múltiplas variáveis do mesmo tipo, ou variáveis que são todas subclasses do mesmo tipo. É comum ouvirmos "array de objetos". Porém quando criamos um array de alguma classe, ele possui referências. O objeto, como sempre, está na memória principal e, no seu array, só ficam guardadas as referências (endereços). Os arrays podem armazenar ou primitivos ou referências a objetos, mas o próprio array será sempre um objeto no heap (falarei mais sobre o heap, em breve), mesmo se o array declarado para armazenar elementos primitivos. Em outras palavras, não existe um array primitivo, mas você pode criar um array de primitivos.

Como os Arrays são declarados? 
Informando-se o tipo de elementos que o array irá armazenar (um objeto ou primitivo), seguido por colchetes em um dos lados do identificador. Lembrando que uma array de tipos primitivos guarda valores, uma array de objetos guarda referências.
Exemplo:

int[] testes;

O int[] é um tipo. E como um array é sempre um objeto, a variável testes é uma referência. Vamos precisar criar um objeto para poder usar o array.
Exemplo:

testes = new int[10];

E você pode (deve) fazer isso diretamente assim:

int[] testes = new int[10];

Pra não esquecer:
Ao declarar uma referencia ao array, você deve sempre colocar os colchetes do array imediatamente depois do tipo declarado, em vez de depois do identificador (nome da variavel). Dessa forma, qualquer um que leia o código saberá facilmente que, por exemplo, testes é uma referência a um objeto de array int, e não um tipo primitivo int.

Criamos um array de int de 10 elementos e atribuímos o endereço no qual ele foi criado.
Podemos ainda acessar os elementos do array:
Exemplo:

testes[5]= 8;

O código acima altera o quinto elemento do array, como pode ver na ilustração abaixo.
| | | | |8| | | | | |

Cada item em um array é chamado de elemento, e cada elemento é acessado pela posição numérica. Como na ilustração abaixo as posições são numeradas a partir do 0 (zero). O 5º elemento, por exemplo, é acessado na posição 4.
|0|1|2|3|4|5|6|7|8|9| -> Posições
 | | | | | | | | | |
 1 2 3 4 5 6 7 8 9 10 -> Elementos

Lembrando que na declaração de um array, cada elemento recebe um valor padrão, sendo 0 (zero) para números de tipo primitivo, falso (false) para elementos booleanos e nulo (null) para referências.

Arrays multidimensionais
Pois é, ainda não acabou! Um array pode ter mais de uma dimensão. Isto é, em vez de termos um array de 10 testes, podemos ter um array de 10 por 10 testes e você pode acessar o teste na posição da coluna x e linha y. Na verdade, um array bidimensional em Java é uma array de arrays. Parece confuso mas é simples, a ilustração deixa bem claro.
Exemplo:
Não vou entrar muito a fundo nessas dimensões, mas vocês podem pesquisar mais a respeito se desejarem. Enfim em Java é fundamental entender o funcionamento de um Array e saber como utilizá-lo. Como podem ver não é tão difícil e é bem útil guardar objetos e valores em um array.

Pra não esquecer:

tipo[] nome_do_array = new tipo[numero_de_elementos];
Ou:
tipo[] nome_do_array = { valor1, valor2, ...,valorx};


Melissa Lobo,