Una breu introducció a TreeMap a Java amb exemples



Aquest article us proporcionarà un coneixement detallat i complet de TreeMap a Java amb exemples de mètodes i constructors.

Implementar una interfície de mapa a Java és una tasca molt important. Amb aquest propòsit, ho tenim Mapa d’arbres i HashMap . En aquest article ens centrarem en TreeMap a a l'ordre següent:

Què és un TreeMap a Java?

Un TreeMap a Java s’utilitza per implementar la interfície Map i NavigableMap juntament amb la classe Abstract. El mapa s’ordena segons l’ordenació natural de les seves claus o mitjançant un comparador proporcionat en el moment de la creació del mapa, en funció del constructor que s’utilitzi. Això demostra ser una manera eficient d’ordenar i emmagatzemar els parells clau-valor.





TreeMap-in-JavaL'ordre d'emmagatzematge mantingut pel mapa de l'arbre ha de ser coherent amb iguals que qualsevol altre mapa ordenat, independentment dels comparadors explícits. El mapa de l’arbrela implementació no està sincronitzada en el sentit que si s’accedeix a un mapa per diversos fils, simultàniament i almenys un dels fils modifica el mapa estructuralment, s’ha de sincronitzar externament.

Característiques de TreeMaps

  • Aquesta classe és membre del Java Collections Framework.



  • La classe implementa interfícies de mapes que inclouen NavigableMap, SortedMap i amplia AbstractMap

  • TreeMap a Java no permet les claus nul·les (com Map) i, per tant, es genera una excepció NullPointerException. Tot i això, es poden associar diversos valors nuls amb claus diferents.

    quin mètode de classe d'escàner llegeix una cadena
  • Tots els parells Map.Entry retornats per mètodes d’aquesta classe i les seves vistes representen instantànies d’assignacions en el moment en què es van produir.



  • No admeten el mètode Entry.setValue.

Punts importants per recordar

  1. A part d'implementar la interfície Map, Java TreeMap també implementa NavigableMap i implementa indirectament la interfície SortedMap. TreeMap també amplia la classe AbstractMap.

  2. Les entrades TreeMap s’ordenen en l’ordenació natural de les seves claus. També proporciona un constructor per proporcionar Comparador que s'utilitzarà per fer comandes. Per tant, si utilitzeu qualsevol classe com a clau, assegureu-vos que implementi una interfície comparable per fer comandes naturals. Consulteu preguntes sobre les entrevistes sobre col·leccions java per entendre la importància d’aquests mètodes.

  3. La implementació de Java TreeMap proporciona un cost de temps de registre (n) garantit per a les operacions de containKey, get, put i remove.

    què és vector a Java
  4. TreeMap no està sincronitzat i, per tant, no és segur per a fils. Per a entorns de diversos fils, podeu obtenir un embolcall sincronitzat mitjançant el mètode Collections.synchronizedSortedMap.

  5. Els mètodes TreeMap per obtenir el conjunt de claus i els valors retornen un iterador de naturalesa ràpida, de manera que qualsevol modificació simultània llançarà ConcurrentModificationException.

  6. TreeMap a Java no permet les claus nul·les, però, podeu tenir diversos valors nuls associats a claus diferents.

Constructors a TreeMap

constructor Descripció
Mapa de l'arbre () Construeix un mapa d’arbre buit que s’ordenarà mitjançant l’ordre natural de les seves claus.
TreeMap (Comp. Comparador) Construeix un mapa buit basat en arbre que s'ordenarà mitjançant el comparador Comp.
Mapa de l'arbre (mapa m) Inicialitza un mapa d’arbre amb les entrades de m, que s’ordenaran mitjançant l’ordre natural de les tecles.
Mapa d'arbre (SortedMap sm) Inicialitza un mapa de l’arbre amb les entrades del sm SortedMap, que s’ordenaran en el mateix ordre que sm.

Mètodes a TreeMap

Mètode Descripció
void clear () Elimina totes les assignacions d’aquest mapa d’arbre.
Clon d'objectes () Retorna una còpia poc profunda d'aquesta instància de TreeMap.
Comparador comparador () Retorna el comparador utilitzat per ordenar aquest mapa o nul si aquest mapa utilitza l'ordre natural de les seves claus.
booleà contéKey (clau d'objecte) Retorna cert si aquest mapa conté una assignació per a la clau especificada.
booleà contéValor (valor de l'objecte) Retorna cert si aquest mapa assigna una o més claus al valor especificat.
Estableix entrySet () Retorna una vista conjunta de les assignacions contingudes en aquest mapa.
Objecte firstKey () Retorna la primera tecla (més baixa) que hi ha actualment en aquest mapa ordenat.
Obtenció d'objectes (clau d'objecte) Retorna el valor al qual aquest mapa assigna la clau especificada.
SortedMap headMap (Object toKey) Retorna una vista de la porció d'aquest mapa les claus de les quals són estrictament inferiors a toKey.
Estableix keySet () Retorna una vista de conjunt de les claus contingudes en aquest mapa.
Objecte lastKey () Retorna l'última tecla (més alta) que hi ha actualment en aquest mapa ordenat.
Objecte posat (clau d'objecte, valor de l'objecte) Associa el valor especificat a la clau especificada en aquest mapa.
void putAll (mapa del mapa) Copia totes les assignacions del mapa especificat a aquest mapa.
Eliminació d'objectes (clau d'objecte) Elimina l’assignació d’aquesta clau d’aquest mapa d’arbre si existeix.
int size () Retorna el nombre d'assignacions de valor-clau d'aquest mapa.
Submapa SortedMap (objecte de clau, objecte de clau) Torna una vista de la porció d'aquest mapa les claus del qual van des de Clau, inclòs, fins a Clau, exclusiu.
SortedMap tailMap (objecte de Clau) Retorna una vista de la porció d'aquest mapa les claus de la qual són majors o iguals a fromKey.
Valors de col·lecció () Retorna una vista de col·lecció dels valors continguts en aquest mapa.

Exemple de TreeMap a Java

import java.util.TreeMap public class TreeMapMain {public static void main (String args []) {// TreeMap amb Country com a clau i capital com a valor // TreeMap emmagatzema elements en l’ordenació natural de les claus. TreeMap countryCapitalMap = new TreeMap () countryCapitalMap.put ('Índia', 'Delhi') countryCapitalMap.put ('Japó', 'Tòquio') countryCapitalMap.put ('França', 'París') countryCapitalMap.put ('Rússia') , 'Moscou') System.out.println ('-----------------------------') // Iteració del mapa d'arbres mitjançant keySet ( ) i per a cada bucle System.out.println ('Iteració de TreeMap mitjançant keySet () i per a cada bucle') per a (String countryKey: countryCapitalMap.keySet ()) {System.out.println ('País:' + countryKey + ' i Capital: '+ countryCapitalMap.get (countryKey))} System.out.println (' ----------------------------- ' )}}

Sortida:

Amb això, arribem al final d’aquest article TreeMap in Java. C fes un cop d'ull al per Edureka, una empresa d'aprenentatge en línia de confiança amb una xarxa de més de 250.000 estudiants satisfets repartits per tot el món. El curs de formació i certificació de Java J2EE i SOA d’Edureka està dissenyat per a estudiants i professionals que vulguin ser desenvolupador de Java. El curs està dissenyat per donar-vos un avantatge en la programació de Java i formar-vos tant per a conceptes bàsics com avançats de Java juntament amb diversos marcs Java com Hibernate i Spring.

Tens alguna pregunta? Si us plau, mencioneu-ho a la secció de comentaris d’aquest bloc “TreeMap in Java” i us respondrem el més aviat possible.

python __init__ self