logo

Trieda Java TreeMap

Hierarchia tried Java TreeMap

Trieda Java TreeMap je implementácia založená na červeno-čiernom strome. Poskytuje efektívny prostriedok na ukladanie párov kľúč – hodnota v zoradenom poradí.

Dôležité body o triede Java TreeMap sú:

  • Java TreeMap obsahuje hodnoty založené na kľúči. Implementuje rozhranie NavigableMap a rozširuje triedu AbstractMap.
  • Java TreeMap obsahuje iba jedinečné prvky.
  • Java TreeMap nemôže mať kľúč null, ale môže mať viacero hodnôt null.
  • Java TreeMap nie je synchronizovaná.
  • Java TreeMap udržiava vzostupné poradie.

Deklarácia triedy TreeMap

Pozrime sa na deklaráciu pre triedu java.util.TreeMap.

reťazec v poli v c
 public class TreeMap extends AbstractMap implements NavigableMap, Cloneable, Serializable 

Parametre triedy TreeMap

Pozrime sa na Parameters pre triedu java.util.TreeMap.

    K: Je to typ kľúčov udržiavaných touto mapou.V: Je to typ mapovaných hodnôt.

Konštruktory triedy Java TreeMap

KonštruktérPopis
TreeMap()Používa sa na vytvorenie prázdnej stromovej mapy, ktorá bude zoradená podľa prirodzeného poradia jej kľúča.
TreeMap (porovnávač komparátorov)Používa sa na vytvorenie prázdnej stromovej mapy, ktorá bude zoradená pomocou komparátora.
Stromová mapa (Mapa m)Používa sa na inicializáciu stromovej mapy s položkami z m , ktoré budú zoradené pomocou prirodzeného poradia klávesov.
Stromová mapa (SortedMap m)Používa sa na inicializáciu stromovej mapy s položkami zo SortedMap sm , ktoré budú zoradené v rovnakom poradí ako sm

Metódy triedy Java TreeMap

MetódaPopis
Mapa. ​​Vstupný stropVstup (kláves K)Vráti pár kľúč – hodnota, ktorý má najmenší kľúč, väčší alebo rovný zadanému kľúču, alebo hodnotu null, ak taký kľúč neexistuje.
K stropný kľúč (kláves K)Vráti najmenší kľúč, väčší ako zadaný kľúč alebo hodnotu null, ak taký kľúč neexistuje.
void clear()Z mapy odstráni všetky páry kľúč – hodnota.
Object clone()Vracia plytkú kópiu inštancie TreeMap.
komparátor komparátor()Vráti komparátor, ktorý usporiada kľúč v poradí, alebo hodnotu null, ak mapa používa prirodzené usporiadanie.
NavigableSet zostupneKeySet()Vráti zobrazenie NavigableSet v obrátenom poradí kľúčov obsiahnutých na mape.
NavigableMap descendingMap()Vráti zadané páry kľúč – hodnota v zostupnom poradí.
Map.Entry firstEntry()Vráti pár kľúč – hodnota, ktorý má najmenší kľúč.
Mapa. ​​Vstupné poschodieVstup (kláves K)Vráti najväčší kľúč, menší alebo rovný zadanému kľúču, alebo null, ak taký kľúč neexistuje.
neplatné pre každého (akcia BiConsumer)Vykonáva danú akciu pre každý záznam na mape, kým nie sú spracované všetky záznamy alebo akcia nevyvolá výnimku.
HeadMap SortedMap (K toKey)Vráti páry kľúč – hodnota, ktorých kľúče sú striktne menšie ako toKey.
HeadMap NavigableMap (K toKey, vrátane booleovskej)Vracia páry kľúč – hodnota, ktorých kľúče sú menšie (alebo sa rovnajú, ak je zahrnutie true) toKey.
Map.Entry aboveEntry(kláves K)Vráti najmenší kľúč striktne väčší ako daný kľúč alebo hodnotu null, ak taký kľúč neexistuje.
K vyšším kľúčom (kláves K)Používa sa na vrátenie true, ak táto mapa obsahuje mapovanie pre zadaný kľúč.
Set keySet()Vráti kolekciu kľúčov, ktoré existujú na mape.
Map.Entry lastEntry()Vráti pár kľúč – hodnota, ktorý má najväčší kľúč, alebo hodnotu null, ak takýto kľúč neexistuje.
Map.Entry lowerEntry (kláves K)Vracia mapovanie kľúč-hodnota spojené s najväčším kľúčom, ktorý je striktne menší ako daný kľúč, alebo null, ak takýto kľúč neexistuje.
Dolný kláves K (kláves K)Vracia najväčší kľúč striktne menší ako daný kľúč alebo null, ak taký kľúč neexistuje.
NavigableSet navigableKeySet()Vráti zobrazenie NavigableSet kľúčov obsiahnutých v tejto mape.
Map.Entry pollFirstEntry()Odstráni a vráti mapovanie párov kľúč-hodnota priradené k najmenšiemu kľúču v tejto mape alebo hodnotu null, ak je mapa prázdna.
Map.Entry pollLastEntry()Odstráni a vráti mapovanie párov kľúč-hodnota priradené k najväčšiemu kľúču na tejto mape alebo hodnotu null, ak je mapa prázdna.
V put (kľúč K, hodnota V)Vloží zadanú hodnotu so zadaným kľúčom do mapy.
void putAll(mapa mapy)Používa sa na skopírovanie všetkých párov kľúč – hodnota z jednej mapy na druhú.
V nahradiť (kľúč K, hodnota V)Nahrádza zadanú hodnotu za zadaný kľúč.
boolovské nahradenie (kľúč K, V stará hodnota, V nová hodnota)Nahradí starú hodnotu novou hodnotou pre zadaný kľúč.
void nahradiť všetko (funkcia BiFunction)Nahrádza hodnotu každej položky výsledkom vyvolania danej funkcie na tejto položke, kým nie sú spracované všetky položky alebo funkcia nevyvolá výnimku.
Podmapa navigovateľnej mapy (K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)Vracia páry kľúč – hodnota, ktorých kľúče sú v rozsahu od fromKey po toKey.
SortedMap subMap (K fromKey, K toKey)Vracia páry kľúč – hodnota, ktorých kľúče sú v rozsahu od odKey vrátane až po toKľúč, exkluzívne.
Zadná mapa SortedMap (K fromKey)Vráti páry kľúč – hodnota, ktorých kľúče sú väčšie alebo rovné fromKey.
Koncová mapa navigačnej mapy (K fromKey, vrátane booleovských hodnôt)Vracia páry kľúč – hodnota, ktorých kľúče sú väčšie ako (alebo sa rovnajú, ak vrátane je pravda) fromKey.
boolean obsahuje kľúč (kľúč objektu)Vráti hodnotu true, ak mapa obsahuje mapovanie pre zadaný kľúč.
boolean obsahujeHodnotu (hodnota objektu)Vráti hodnotu true, ak mapa mapuje jeden alebo viac kľúčov na zadanú hodnotu.
K firstKey()Používa sa na vrátenie prvého (najnižšieho) kľúča, ktorý je momentálne v tejto zoradenej mape.
V get (kľúč objektu)Používa sa na vrátenie hodnoty, na ktorú mapa mapuje zadaný kľúč.
K lastKey()Používa sa na vrátenie posledného (najvyššieho) kľúča, ktorý je momentálne na zoradenej mape.
V odstrániť (kľúč objektu)Odstráni z mapy pár kľúč – hodnota zadaného kľúča.
SetentrySet()Vráti nastavený pohľad na mapovania obsiahnuté v mape.
int size()Vráti počet párov kľúč – hodnota, ktoré existujú v hašovacej tabuľke.
Hodnoty zbierky ()Vráti zobrazenie kolekcie hodnôt obsiahnutých v mape.

Príklad Java TreeMap

 import java.util.*; class TreeMap1{ public static void main(String args[]){ TreeMap map=new TreeMap(); map.put(100,'Amit'); map.put(102,'Ravi'); map.put(101,'Vijay'); map.put(103,'Rahul'); for(Map.Entry m:map.entrySet()){ System.out.println(m.getKey()+' '+m.getValue()); } } } 
 Output:100 Amit 101 Vijay 102 Ravi 103 Rahul 

Príklad Java TreeMap: remove()

 import java.util.*; public class TreeMap2 { public static void main(String args[]) { TreeMap map=new TreeMap(); map.put(100,'Amit'); map.put(102,'Ravi'); map.put(101,'Vijay'); map.put(103,'Rahul'); System.out.println('Before invoking remove() method'); for(Map.Entry m:map.entrySet()) { System.out.println(m.getKey()+' '+m.getValue()); } map.remove(102); System.out.println('After invoking remove() method'); for(Map.Entry m:map.entrySet()) { System.out.println(m.getKey()+' '+m.getValue()); } } } 

Výkon:

javascript tutoriál
 Before invoking remove() method 100 Amit 101 Vijay 102 Ravi 103 Rahul After invoking remove() method 100 Amit 101 Vijay 103 Rahul 

Príklad Java TreeMap: NavigableMap

 import java.util.*; class TreeMap3{ public static void main(String args[]){ NavigableMap map=new TreeMap(); map.put(100,'Amit'); map.put(102,'Ravi'); map.put(101,'Vijay'); map.put(103,'Rahul'); //Maintains descending order System.out.println('descendingMap: '+map.descendingMap()); //Returns key-value pairs whose keys are less than or equal to the specified key. System.out.println('headMap: '+map.headMap(102,true)); //Returns key-value pairs whose keys are greater than or equal to the specified key. System.out.println('tailMap: '+map.tailMap(102,true)); //Returns key-value pairs exists in between the specified key. System.out.println('subMap: '+map.subMap(100, false, 102, true)); } } 
 descendingMap: {103=Rahul, 102=Ravi, 101=Vijay, 100=Amit} headMap: {100=Amit, 101=Vijay, 102=Ravi} tailMap: {102=Ravi, 103=Rahul} subMap: {101=Vijay, 102=Ravi} 

Príklad Java TreeMap: SortedMap

 import java.util.*; class TreeMap4{ public static void main(String args[]){ SortedMap map=new TreeMap(); map.put(100,'Amit'); map.put(102,'Ravi'); map.put(101,'Vijay'); map.put(103,'Rahul'); //Returns key-value pairs whose keys are less than the specified key. System.out.println('headMap: '+map.headMap(102)); //Returns key-value pairs whose keys are greater than or equal to the specified key. System.out.println('tailMap: '+map.tailMap(102)); //Returns key-value pairs exists in between the specified key. System.out.println('subMap: '+map.subMap(100, 102)); } } 
 headMap: {100=Amit, 101=Vijay} tailMap: {102=Ravi, 103=Rahul} subMap: {100=Amit, 101=Vijay} 

Aký je rozdiel medzi HashMap a TreeMap?

HashMapStromová mapa
1) HashMap môže obsahovať jeden nulový kľúč.TreeMap nemôže obsahovať žiadny nulový kľúč.
2) HashMap neudržiava žiadny poriadok.TreeMap udržiava vzostupné poradie.

Príklad Java TreeMap: Kniha

 import java.util.*; class Book { int id; String name,author,publisher; int quantity; public Book(int id, String name, String author, String publisher, int quantity) { this.id = id; this.name = name; this.author = author; this.publisher = publisher; this.quantity = quantity; } } public class MapExample { public static void main(String[] args) { //Creating map of Books Map map=new TreeMap(); //Creating Books Book b1=new Book(101,'Let us C','Yashwant Kanetkar','BPB',8); Book b2=new Book(102,'Data Communications & Networking','Forouzan','Mc Graw Hill',4); Book b3=new Book(103,'Operating System','Galvin','Wiley',6); //Adding Books to map map.put(2,b2); map.put(1,b1); map.put(3,b3); //Traversing map for(Map.Entry entry:map.entrySet()){ int key=entry.getKey(); Book b=entry.getValue(); System.out.println(key+' Details:'); System.out.println(b.id+' '+b.name+' '+b.author+' '+b.publisher+' '+b.quantity); } } } 

Výkon:

 1 Details: 101 Let us C Yashwant Kanetkar BPB 8 2 Details: 102 Data Communications & Networking Forouzan Mc Graw Hill 4 3 Details: 103 Operating System Galvin Wiley 6