12
Vetores e Coleções A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: Vetores ou arrays Constituem um mecanismo nativo da linguagem para manter referências a valores de tipos primitivos e objetos, sendo a forma mais eficiente de manter referências. Os vetores têm tamanho fixo e não podem ser redimensionados. Coleções São utilizadas na representação de listas, conjuntos e mapas. Constituem uma solução flexível para o armazenamento d objetos, pois a quantidade armazenada não é fixa.

A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Embed Size (px)

Citation preview

Page 1: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Vetores e Coleções A linguagem Java tem diversas classes para a

manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes:◦ Vetores ou arrays

Constituem um mecanismo nativo da linguagem para manter referências a valores de tipos primitivos e objetos, sendo a forma mais eficiente de manter referências. Os vetores têm tamanho fixo e não podem ser redimensionados.

◦ Coleções São utilizadas na representação de listas, conjuntos e

mapas. Constituem uma solução flexível para o armazenamento d objetos, pois a quantidade armazenada não é fixa.

Page 2: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Quando é necessário agrupar elementos de um mesmo tipo, em uma única estrutura, normalmente utiliza-se o vetor (Array).

Para declarar o vetor são utilizados colchetes [ ]

Além de declarar o vetor, é necessário alocar espaço na memória para determinado número de elementos.

Vetores

Page 3: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Vetores Reduzido

Page 4: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

O Java possui uma classe própria para manipulação de arrays, que se chama Arrays.

Para utilizar a classe Arrays é necessário adicionar import, conforme abaixo:

Os principais métodos da classe Arrays são: sort equals fill binarySearch

Classe Arrays

Page 5: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Ordena os elementos do array de forma ascedente

Método sort

Page 6: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Retorna true se os arrays tiverem o mesmo conteúdo e na mesma ordem.

Método Equals

Page 7: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Preenche o array com o valor recebido como parâmetro

Método Fill

Page 8: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Retorna um inteiro, que indica a posição do array na qual o valor se encontra, ou retorna um valor negativo, caso o valor não seja encontrado.

Obs: Só funciona se o vetor tiver sido ordenado anteriormente.

Método binarySearch

Page 9: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Basta utilizar o método arraycopy da classe System

Copiando elementos de um array para outro

arraycopy(origem, índice origem, destino, índice destino, quantidade).

Page 10: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Copiando elementos de um array para outro

Page 11: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Os arrays podem ter mais do que uma dimensão. Um array de duas dimensões seria como uma tabela. de 3 dimensões, seria como um cubo.

Vetores Multidimensionais

Page 12: A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem ser organizados de duas maneiras diferentes: ◦ Vetores

Vetores Multidimensionais

Observe que, no exemplo acima, d.length irá retornar o número de linhas. O primeiro for está varrendo as linhas. Já d[i].length, que é aplicado à cada linha, retorna o número de colunas. O segundo for está varrendo as colunas de cada linha. Ou seja, foi feito um loop para percorrer as linhas e, em cada linha, foi feito um loop para percorrer as colunas existentes nela.