Java - Estruturas de Dados

As estruturas de dados fornecidas pelo pacote de utilitários Java são muito poderosas e executam uma ampla variedade de funções. Essas estruturas de dados consistem nas seguintes interfaces e classes -

  • Enumeration
  • BitSet
  • Vector
  • Stack
  • Dictionary
  • Hashtable
  • Properties

Todas essas classes agora são legadas e Java-2 introduziu uma nova estrutura chamada Collections Framework, que é discutida no próximo capítulo. -

A Enumeração

A interface Enumeration não é em si uma estrutura de dados, mas é muito importante no contexto de outras estruturas de dados. A interface Enumeration define um meio de recuperar elementos sucessivos de uma estrutura de dados.

Por exemplo, Enumeration define um método chamado nextElement que é usado para obter o próximo elemento em uma estrutura de dados que contém vários elementos.

Para ter mais detalhes sobre esta interface, verifique The Enumeration .

O BitSet

A classe BitSet implementa um grupo de bits ou sinalizadores que podem ser definidos e limpos individualmente.

Esta classe é muito útil nos casos em que você precisa se manter atualizado com um conjunto de valores booleanos; você apenas atribui um bit a cada valor e define ou apaga conforme apropriado.

Para obter mais detalhes sobre esta classe, verifique The BitSet .

O vetor

A classe Vector é semelhante a um array Java tradicional, exceto que pode crescer conforme necessário para acomodar novos elementos.

Como uma matriz, os elementos de um objeto Vector podem ser acessados ​​por meio de um índice no vetor.

O bom de usar a classe Vector é que você não precisa se preocupar em defini-la para um tamanho específico na criação; ele encolhe e cresce automaticamente quando necessário.

Para obter mais detalhes sobre esta classe, verifique The Vector .

A pilha

A classe Stack implementa uma pilha de elementos LIFO (last-in-first-out).

Você pode pensar em uma pilha literalmente como uma pilha vertical de objetos; quando você adiciona um novo elemento, ele é empilhado em cima dos outros.

Quando você puxa um elemento da pilha, ele sai do topo. Em outras palavras, o último elemento adicionado à pilha é o primeiro a voltar.

Para obter mais detalhes sobre esta classe, consulte The Stack .

O dicionário

A classe Dictionary é uma classe abstrata que define uma estrutura de dados para mapear chaves para valores.

Isso é útil nos casos em que você deseja acessar dados por meio de uma chave específica, em vez de um índice inteiro.

Como a classe Dictionary é abstrata, ela fornece apenas a estrutura para uma estrutura de dados mapeada por chave, em vez de uma implementação específica.

Para obter mais detalhes sobre esta aula, consulte O Dicionário .

The Hashtable

A classe Hashtable fornece um meio de organizar dados com base em alguma estrutura de chave definida pelo usuário.

Por exemplo, em uma tabela de hash da lista de endereços, você pode armazenar e classificar os dados com base em uma chave, como o código postal, em vez do nome de uma pessoa.

O significado específico das chaves em relação às tabelas hash é totalmente dependente do uso da tabela hash e dos dados que ela contém.

Para obter mais detalhes sobre esta classe, verifique The Hashtable .

As Propriedades

Propriedades é uma subclasse de Hashtable. É usado para manter listas de valores em que a chave é uma String e o valor também é uma String.

A classe Properties é usada por muitas outras classes Java. Por exemplo, é o tipo de objeto retornado por System.getProperties () ao obter valores ambientais.

Para obter mais detalhes sobre esta classe, verifique as propriedades .