Ajude o desenvolvimento do site, compartilhando o artigo com os amigos!

Introdução ao TreeMap em Java

TreeMap é usado com a classe abstrata para implantar a interface Map e NavigableMap em Java. O mapa é classificado de acordo com a sequência natural de suas chaves ou por um comparador pré-construído que depende do construtor. Essa é uma maneira fácil de classificar e armazenar os pares de valores-chave. A ordem de armazenamento retida pelo mapa de árvore deve ser a mesma de qualquer outro mapa classificado, independentemente dos comparadores específicos.

A seguir estão algumas das propriedades do TreeMap.

  • Consiste em elementos únicos.
  • Não pode ter chave nula.
  • Pode ter valores nulos várias vezes.
  • Não sincronizado.

Declaração:

classe pública TreeMap estende AbstractMapimplements NavigableMap, Cloneable, Serializable

Aqui, Key e Value são os tipos de chaves e valores mapeados neste mapa, respectivamente.

Construtores de TreeMap

A seguir estão os construtores do TreeMap.

  • TreeMap(): Um mapa de árvore novo e vazio será construído ordenando naturalmente as chaves.
  • TreeMap( Comparator comparador): Um novo mapa de árvore vazio será construído ordenando as chaves especificadas no comparador.
  • TreeMap( Map m): Um novo treemap será construído com os mapeamentos no map me naturalmente ordenar as chaves.
  • TreeMap( SortedMap m): Um novo treemap será construído com os mapeamentos no map me ordenando as chaves especificadas no comparador.

Métodos de TreeMap

TreeMap oferece uma ampla coleção de métodos que ajudam na execução de diferentes funções. São eles:

  • clear(): Todos os mapeamentos no mapa serão removidos.
  • clone(): Uma cópia superficial será retornada para a instância TreeMap.
  • containsKey(Objectk): Se houver mapeamento disponível para a chave especificada, será retornado true.
  • containsValue(Objectv): Se houver mapeamento disponível para uma ou mais chaves para o valor v, true será retornado.
  • ceilingKey(Kkey): A menor chave que for maior ou igual à chave especificada será retornada. Se não houver chave, será retornado null.
  • ceilingEntry(Kkey): O par chave-valor para a menor chave, maior ou igual à chave especificada, será retornado. Se não houver chave, será retornado null.
  • firstKey(): Primeira ou última chave no mapa será retornada.
  • firstEntry(): O par chave-valor para a menor ou a primeira chave no mapa será retornado. Se não houver chave, será retornado null.
  • floorKey(Kkey): A maior chave, que é menor ou igual à chave especificada, será retornada. Se não houver chave, será retornado null.
  • floorEntry(Kkey): Pair chave-valor para a maior chave, que é menor ou igual à chave especificada, será retornado. Se não houver chave, será retornado null.
  • lastKey(): A chave mais alta ou última no mapa será retornada.
  • lastEntry(): O par chave-valor para a maior chave no mapa será retornado. Se não houver chave, será retornado null.
  • lowerKey(Kkey): A maior chave, que é estritamente menor que a chave especificada, será retornada. Se não houver chave, será retornado null.
  • lowerEntry(Kkey): O par chave-valor para a maior chave, que é estritamente menor que a chave especificada, será retornado. Se não houver chave, será retornado null.
  • remove(Objectk): O mapeamento para a chave especificada no mapa será removido.
  • size(): A contagem de pares chave-valor no mapa será retornada.
  • higherEntry(Kkey): O par chave-valor para a menor chave, que é estritamente maior que a chave especificada, será retornado. Se não houver chave, será retornado null.
  • higherKey(Kkey): A menor chave, que é estritamente maior que a chave especificada, será retornada. Se não houver chave, será retornado null.
  • descendingMap(): A ordem inversa será retornada para os mapeamentos.
  • entrySet(): Set view será retornado para os mapeamentos.
  • get(Objectk): O valor da chave especificada será retornado. Se a chave não contiver nenhum mapeamento, será retornado null.
  • keySet(): Set view será retornado para as teclas.
  • navigableKeySet(): NavigableSet será retornada para as teclas.
  • pollFirstEntry(): O par chave-valor para a menor ou a primeira chave no mapa será removido e retornado. Se o mapa estiver vazio, será retornado null.
  • pollLastEntry(): Os pares de chave-valor para a maior chave no mapa serão removidos e retornados. Se o mapa estiver vazio, será retornado null.
  • values(): A visualização de coleção será retornada para os valores no mapa.

Exemplo para implementar TreeMap em Java

Agora, vamos ver um programa de exemplo para criar um mapa de árvore e adicionar elementos a ele.

"import java.util.Iterator; importar java.util.Map; importar java.util.Set; importar java.util.TreeMap; public class TreeMapExample { public static void main(String args()) { // Criação do mapa de árvore TreeMap tmap=new TreeMap(); // Adiciona elementos ao mapa de árvore tmap tmap.put(Anna Jeshua, novo Duplo(3459,70)); tmap.put(Annamu Jeshua, novo Duplo(321,56)); tmap.put(Izanorah Denan, new Double(1234,87)); tmap.put(Adam Jeshua, novo Duplo(89,35)); tmap.put(Anabeth Jeshua, novo Duplo(-20.98)); // Recupera o conjunto de entrada do mapa de árvore Set set=tmap.entrySet(); // Cria um iterador itr Iterator itr=set.iterator(); // Exibe os elementos no mapa de árvore usando while loop while(itr.hasNext()) { Map.Entry mp=(Map.Entry)itr.next(); System.out.print( Chave : + mp.getKey() + ;); System.out.println( Valor : + mp.getValue()); } System.out.println(); // Adiciona 2500 ao valor de Anabeth double val=((Double)tmap.get(Anabeth Jeshua)).doubleValue(); tmap.put(Anabeth Jeshua, new Double(val + 2500)); System.out.println(novo valor de Anabeth: + tmap.get(Anabeth Jeshua)); } }"

Saída:

Chaves e valores correspondentes do TreeMap serão exibidos na execução do código.

Explicação:

  • Primeiro, crie um TreeMap e adicione elementos a ele.
  • Para exibir os elementos, um iterador deve ser criado.
  • Usando o iterador, todas as chaves e seus valores correspondentes são exibidos.
  • Para adicionar 2500 ao valor de uma chave, o método put() também é usado.

Conclusão

Java TreeMap é uma implementação da árvore Red-Black que ajuda a armazenar pares de valores-chave em ordem de classificação. Neste documento, vários detalhes como declaração, construtores, métodos e programa de amostra do Java TreeMap são discutidos em detalhes.

Ajude o desenvolvimento do site, compartilhando o artigo com os amigos!