quarta-feira, novembro 17

Java - Collections

O Framework de Collections do Java fornece várias classes para manipular estruturas de dados complexas de forma abstrata.

A Collection se divide básicamente em Listas e Conjuntos.
Veja abaixo as principais características de cada classe:

Listas:
  • Permitem repetição
  • Mantêm a ordem de inserção
ArrayList:
  • A busca é feita diretamente pelo índice, por isso é extremamente rápido
  • A inserção e remoção dependem da quantidade de itens na lista
LinkedList (Lista ligada):
  • A busca, inserção e remoção são feitas de forma linear, dependem da quantidade de itens na lista
Conjuntos:
  • Não permitem repetição
  • Não mantêm a ordem de inserção
HashSet:
  • Mistura um array com uma lista ligada
  • A busca é muito eficiente
  • A inserção e remoção também são muito eficientes
  • É impossível determinar a ordem de saída dos dados
TreeSet (Árvore binária):
  • É balanceada automáticamente
  • A busca, inserção e remoção são eficientes
  • A saída dos dados sempre estará ordenada
Além dessas classe básicas, também existem outras duas classe importantes:

Map:
  • É um conjunto de pares
  • As chaves não podem ser repetidas
  • O percurso é feito através das chaves
  • Se divide em HashMap e TreeMap
Properties:
  • É um mapa, mas com chaves e valores do tipo String
  • Geralmente usado para armazenar configurações da aplicação
Nas Collections é importante conhecer o Iterator, ele serve para navegar em uma collection:
  • Para obter o Iterator de uma Collection utiliza-se o método iterator() da Collection
  • Para saber se existe um próximo item na Collection utiliza-se o método hasNext() do Iterator
  • Para retornar o próximo item da lista, utiliza-se o método next() do Iterator

Nenhum comentário: