A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem...

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.

Transcript of A linguagem Java tem diversas classes para a manipulação dos conjuntos de dados. Esses dados podem...

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.