Java TreeMap klase ir sarkani-melna koka ieviešana. Tas nodrošina efektīvu līdzekli atslēgu un vērtību pāru glabāšanai sakārtotā secībā.
Svarīgi punkti par Java TreeMap klasi ir:
- Java TreeMap satur vērtības, kuru pamatā ir atslēga. Tas ievieš NavigableMap saskarni un paplašina AbstractMap klasi.
- Java TreeMap satur tikai unikālus elementus.
- Java TreeMap nevar būt nulles atslēgas, bet var būt vairākas nulles vērtības.
- Java TreeMap nav sinhronizēta.
- Java TreeMap saglabā augošu secību.
TreeMap klases deklarācija
Apskatīsim klases java.util.TreeMap deklarāciju.
java punkts
public class TreeMap extends AbstractMap implements NavigableMap, Cloneable, Serializable
TreeMap klases parametri
Apskatīsim java.util.TreeMap klases parametrus.
Java TreeMap klases konstruktori
Konstruktors | Apraksts |
---|---|
TreeMap () | To izmanto, lai izveidotu tukšu koku karti, kas tiks sakārtota, izmantojot tās atslēgas dabisko secību. |
TreeMap (salīdzināšanas līdzeklis) | To izmanto, lai izveidotu tukšu uz koku balstītu karti, kas tiks sakārtota, izmantojot salīdzināšanas rīku. |
TreeMap (karte m) | To izmanto, lai inicializētu koka karti ar ierakstiem no m , kas tiks sakārtoti, izmantojot dabisko taustiņu secību. |
TreeMap (SortedMap m) | To izmanto, lai inicializētu koka karti ar ierakstiem no SortedMap sm , kas tiks sakārtoti tādā pašā secībā kā sm. |
Java TreeMap klases metodes
Metode | Apraksts |
---|---|
Karte.Ieejas griesti Ieeja (K taustiņš) | Tas atgriež atslēgas-vērtības pāri, kuram ir vismazākā atslēga, kas ir lielāka vai vienāda ar norādīto atslēgu, vai nulle, ja šādas atslēgas nav. |
K griestu atslēga (K atslēga) | Tas atgriež mazāko atslēgu, lielāku par norādīto atslēgu vai nulli, ja šādas atslēgas nav. |
tukšums skaidrs () | Tas no kartes noņem visus atslēgu un vērtību pārus. |
Objekta klons () | Tas atgriež seklu TreeMap instances kopiju. |
Comparator Comparator() | Tas atgriež salīdzinājumu, kas sakārto atslēgu secībā, vai nulli, ja karte izmanto dabisko secību. |
NavigableSet descendingKeySet() | Tas atgriež kartē ietverto taustiņu NavigableSet skatu apgrieztā secībā. |
NavigableMap dilstošā karte() | Tas atgriež norādītos atslēgu un vērtību pārus dilstošā secībā. |
Karte.Entry firstEntry() | Tas atgriež atslēgas vērtību pāri, kuram ir vismazākā atslēga. |
Karte.Ieejas grīda Ievads(K taustiņš) | Tas atgriež lielāko atslēgu, kas ir mazāka par norādīto atslēgu vai vienāda ar to, vai nulle, ja šādas atslēgas nav. |
spēkā neesošs par katru (divu patērētāju darbība) | Tas veic doto darbību katram ierakstam kartē, līdz visi ieraksti ir apstrādāti vai darbība rada izņēmumu. |
SortedMap headMap (K toKey) | Tas atgriež atslēgu un vērtību pārus, kuru atslēgas ir stingri mazākas par toKey. |
NavigableMap headMap (K toKey, Būla vērtība ieskaitot) | Tas atgriež atslēgu-vērtību pārus, kuru atslēgas ir mazākas par (vai vienādas ar toKey, ja inclusive ir patiesa). |
Karte.Entry highEntry(K taustiņš) | Tas atgriež mazāko atslēgu, kas ir stingri lielāka par doto atslēgu, vai nulli, ja šādas atslēgas nav. |
K lielākā atslēga (K taustiņa) | To izmanto, lai atgrieztu patiesu, ja šajā kartē ir norādītās atslēgas kartējums. |
Iestatīt keySet() | Tas atgriež kartē esošo atslēgu kolekciju. |
Map.Entry lastEntry() | Tas atgriež atslēgu un vērtību pāri ar lielāko atslēgu vai nulli, ja šādas atslēgas nav. |
Karte.Ieraksts zemāksEntry(K taustiņš) | Tas atgriež atslēgas vērtību kartējumu, kas saistīts ar lielāko atslēgu, kas ir stingri mazāka par doto atslēgu, vai nulli, ja šādas atslēgas nav. |
K zemākais taustiņš (K taustiņš) | Tas atgriež lielāko atslēgu, kas ir stingri mazāka par doto atslēgu vai nulli, ja šādas atslēgas nav. |
NavigableSet navigableKeySet() | Tas atgriež šajā kartē ietverto taustiņu NavigableSet skatu. |
Karte.Entry pollFirstEntry() | Tas noņem un atgriež atslēgas vērtību kartējumu, kas saistīts ar vismazāko atslēgu šajā kartē, vai nulle, ja karte ir tukša. |
Karte.Entry poll LastEntry() | Tas noņem un atgriež atslēgas vērtību kartējumu, kas saistīts ar šīs kartes lielāko atslēgu, vai nulle, ja karte ir tukša. |
V put (atslēga K, V vērtība) | Tas kartē ievieto norādīto vērtību ar norādīto atslēgu. |
tukšs, likt visu (kartes karte) | To izmanto, lai kopētu visu atslēgu un vērtību pāri no vienas kartes uz citu karti. |
V nomaiņa (taustiņš K, V vērtība) | Tas aizstāj norādīto vērtību noteiktai atslēgai. |
Būla nomaiņa (atslēga K, V oldValue, V newValue) | Tas aizstāj veco vērtību ar jauno vērtību noteiktai atslēgai. |
anulēt visu (funkcija BiFunction) | Tas aizvieto katra ieraksta vērtību ar šīs funkcijas izsaukšanas rezultātu šajā ierakstā, līdz visi ieraksti ir apstrādāti vai funkcija rada izņēmumu. |
NavigableMap apakškarte (K noKey, Būla noIeskaitot, K toKey, Būla uzInclusive) | Tas atgriež atslēgu-vērtību pārus, kuru atslēgas ir noKey līdz toKey. |
Sakārtotās kartes apakškarte (K fromKey, K toKey) | Tas atgriež atslēgu-vērtību pārus, kuru atslēgas ir noKey, ieskaitot, līdz toKey, ekskluzīvas. |
SortedMap astes karte (K fromKey) | Tas atgriež atslēgu un vērtību pārus, kuru atslēgas ir lielākas vai vienādas ar fromKey. |
NavigableMap astes karte (K fromKey, Būla vērtība ieskaitot) | Tas atgriež atslēgu un vērtību pārus, kuru atslēgas ir lielākas par (vai vienādas ar, ja inclusive ir patiesa) fromKey. |
Būla vērtība saturKey (objekta atslēga) | Tas atgriež patieso vērtību, ja kartē ir norādītās atslēgas kartējums. |
Būla saturs(objekta vērtība) | Tas atgriež patieso vērtību, ja karte kartē vienu vai vairākas atslēgas uz norādīto vērtību. |
K firstKey() | To izmanto, lai atgrieztu pirmo (zemāko) atslēgu pašlaik šajā sakārtotajā kartē. |
V get (objekta atslēga) | To izmanto, lai atgrieztu vērtību, ar kuru karte kartē norādīto atslēgu. |
K lastKey() | To izmanto, lai atgrieztu pēdējo (augstāko) atslēgu pašlaik sakārtotajā kartē. |
V noņemšana (objekta atslēga) | Tas no kartes noņem norādītās atslēgas atslēgas-vērtības pāri. |
Iestatīt | Tas atgriež iestatīto kartē ietverto kartējumu skatu. |
int size () | Tas atgriež jaucējtabulā esošo atslēgu un vērtību pāru skaitu. |
Kolekcijas vērtības() | Tas atgriež kartē ietverto vērtību kolekcijas skatu. |
Java TreeMap piemērs
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
Java TreeMap piemērs: 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()); } } }
Izvade:
kas ir dators
Before invoking remove() method 100 Amit 101 Vijay 102 Ravi 103 Rahul After invoking remove() method 100 Amit 101 Vijay 103 Rahul
Java TreeMap piemērs: 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}
Java TreeMap piemērs: 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}
Kāda ir atšķirība starp HashMap un TreeMap?
HashMap | TreeMap |
---|---|
1) HashMap var saturēt vienu nulles atslēgu. | TreeMap nedrīkst saturēt nulles atslēgu. |
2) HashMap neuztur nekādu kārtību. | TreeMap saglabā augošu secību. |
Java TreeMap piemērs: grāmata
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); } } }
Izvade:
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