logo

Java TreeMap klasse

Java TreeMap klassehierarki

Java TreeMap-klassen er en rød-svart trebasert implementering. Det gir en effektiv måte å lagre nøkkel-verdi-par i sortert rekkefølge.

De viktige punktene om Java TreeMap-klassen er:

  • Java TreeMap inneholder verdier basert på nøkkelen. Den implementerer NavigableMap-grensesnittet og utvider AbstractMap-klassen.
  • Java TreeMap inneholder bare unike elementer.
  • Java TreeMap kan ikke ha en nullnøkkel, men kan ha flere nullverdier.
  • Java TreeMap er ikke synkronisert.
  • Java TreeMap opprettholder stigende rekkefølge.

TreeMap-klasseerklæring

La oss se erklæringen for java.util.TreeMap-klassen.

15 av 100,00
 public class TreeMap extends AbstractMap implements NavigableMap, Cloneable, Serializable 

TreeMap klasse Parametere

La oss se parameterne for java.util.TreeMap-klassen.

    K: Det er typen nøkler som vedlikeholdes av dette kartet.I: Det er typen kartlagte verdier.

Konstruktører av Java TreeMap-klassen

KonstruktørBeskrivelse
Trekart()Det brukes til å konstruere et tomt trekart som vil bli sortert ved å bruke den naturlige rekkefølgen til nøkkelen.
TreeMap (komparator komparator)Det brukes til å konstruere et tomt trebasert kart som vil bli sortert ved hjelp av komparatorkomp.
Trekart(Kart m)Den brukes til å initialisere et trekart med oppføringene fra m , som vil bli sortert ved hjelp av den naturlige rekkefølgen til nøklene.
Trekart(Sortert kart m)Den brukes til å initialisere et trekart med oppføringene fra SortedMap sm , som vil bli sortert i samme rekkefølge som sm.

Metoder for Java TreeMap-klassen

MetodeBeskrivelse
Map.Entry ceilingEntry(K-tast)Den returnerer nøkkel-verdi-paret som har den minste nøkkelen, større enn eller lik den angitte nøkkelen, eller null hvis det ikke finnes en slik nøkkel.
K loftnøkkel (K nøkkel)Den returnerer den minste nøkkelen, større enn den angitte nøkkelen eller null hvis det ikke finnes en slik nøkkel.
void clear()Den fjerner alle nøkkelverdi-parene fra et kart.
Objekt klone()Den returnerer en grunn kopi av TreeMap-forekomsten.
Komparator komparator()Den returnerer komparatoren som ordner nøkkelen i rekkefølge, eller null hvis kartet bruker den naturlige rekkefølgen.
NavigableSet descendingKeySet()Den returnerer en omvendt rekkefølge NavigableSet-visning av nøklene på kartet.
NavigableMap descendingMap()Den returnerer de angitte nøkkelverdi-parene i synkende rekkefølge.
Map.Entry firstEntry()Den returnerer nøkkel-verdi-paret som har den minste nøkkelen.
Map.Entry floorEntry(K-tast)Den returnerer den største nøkkelen, mindre enn eller lik den angitte nøkkelen, eller null hvis det ikke finnes en slik nøkkel.
void forEach (BiConsumer-handling)Den utfører den gitte handlingen for hver oppføring i kartet til alle oppføringer er behandlet eller handlingen gir et unntak.
SortedMap headMap(K toKey)Den returnerer nøkkel-verdi-parene hvis nøkler er strengt tatt mindre enn toKey.
NavigableMap headMap (K toKey, boolsk inkludert)Den returnerer nøkkel-verdi-parene hvis nøkler er mindre enn (eller lik hvis inkluderende er sant) toKey.
Map.Entry higherEntry(K-tast)Den returnerer den minste nøkkelen strengt tatt større enn den gitte nøkkelen, eller null hvis det ikke finnes en slik nøkkel.
K høyere tast (K tast)Den brukes til å returnere sann hvis dette kartet inneholder en tilordning for den angitte nøkkelen.
Sett keySet()Den returnerer samlingen av nøkler som finnes i kartet.
Map.Entry lastEntry()Den returnerer nøkkel-verdi-paret som har den største nøkkelen, eller null hvis det ikke finnes en slik nøkkel.
Map.Entry lowerEntry(K-tast)Den returnerer en nøkkel-verdi-tilordning knyttet til den største nøkkelen strengt tatt mindre enn den gitte nøkkelen, eller null hvis det ikke finnes en slik nøkkel.
K lavere tast (K-tast)Den returnerer den største nøkkelen strengt tatt mindre enn den gitte nøkkelen, eller null hvis det ikke finnes en slik nøkkel.
NavigableSet navigableKeySet()Den returnerer en NavigableSet-visning av nøklene i dette kartet.
Map.Entry pollFirstEntry()Den fjerner og returnerer en nøkkelverdi-tilordning knyttet til den minste nøkkelen i dette kartet, eller null hvis kartet er tomt.
Map.Entry pollLastEntry()Den fjerner og returnerer en nøkkelverdi-tilordning knyttet til den største nøkkelen i dette kartet, eller null hvis kartet er tomt.
V-sett (K-tast, V-verdi)Den setter inn den angitte verdien med den angitte nøkkelen i kartet.
void putAll(Kart kart)Den brukes til å kopiere alle nøkkelverdi-parene fra ett kart til et annet kart.
V erstatte (K-tast, V-verdi)Den erstatter den angitte verdien for en spesifisert nøkkel.
boolsk erstatt (K-tast, V oldValue, V newValue)Den erstatter den gamle verdien med den nye verdien for en spesifisert nøkkel.
void replaceAll (BiFunction-funksjon)Den erstatter hver oppførings verdi med resultatet av å påkalle den gitte funksjonen på den oppføringen til alle oppføringer er behandlet eller funksjonen gir et unntak.
NavigableMap subMap(K fraNøkkel, boolsk fraInklusive, K tilKey, Boolsk tilInkluderende)Den returnerer nøkkel-verdi-par hvis nøkler varierer fra fra nøkkel til nøkkel.
Sortert kart underkart (K fra nøkkel, K til nøkkel)Den returnerer nøkkelverdi-par hvis nøkler spenner fra fra Key, inklusive, til toKey, eksklusive.
Sorted Map tailMap (K fraKey)Den returnerer nøkkel-verdi-par hvis nøkler er større enn eller lik fromKey.
NavigableMap tailMap (K fromKey, boolsk inkludert)Den returnerer nøkkel-verdi-par hvis nøkler er større enn (eller lik, hvis inkluderende er sant) fromKey.
boolean containsKey(Objektnøkkel)Det returnerer sant hvis kartet inneholder en tilordning for den angitte nøkkelen.
boolean containsValue(Objektverdi)Det returnerer sant hvis kartet tilordner én eller flere nøkler til den angitte verdien.
K firstKey()Den brukes til å returnere den første (laveste) nøkkelen i dette sorterte kartet.
V get (objektnøkkel)Den brukes til å returnere verdien som kartet tilordner den angitte nøkkelen til.
K lastKey()Den brukes til å returnere den siste (høyeste) nøkkelen i det sorterte kartet.
V fjern (objektnøkkel)Den fjerner nøkkelverdi-paret til den angitte nøkkelen fra kartet.
SettentrySet()Den returnerer en sett visning av kartene i kartet.
int størrelse()Den returnerer antallet nøkkelverdi-par som finnes i hashtabellen.
Samlingsverdier()Den returnerer en samlingsvisning av verdiene i kartet.

Eksempel på 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 

Java TreeMap Eksempel: 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()); } } } 

Produksjon:

liste java til array
 Before invoking remove() method 100 Amit 101 Vijay 102 Ravi 103 Rahul After invoking remove() method 100 Amit 101 Vijay 103 Rahul 

Java TreeMap Eksempel: 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 Eksempel: 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} 

Hva er forskjellen mellom HashMap og TreeMap?

HashMapTrekart
1) HashMap kan inneholde én nullnøkkel.TreeMap kan ikke inneholde noen nullnøkkel.
2) HashMap opprettholder ingen orden.TreeMap opprettholder stigende rekkefølge.

Java TreeMap Eksempel: Bok

 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); } } } 

Produksjon:

 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