logo

Java TreeMap klass

Java TreeMap klasshierarki

Java TreeMap-klassen är en röd-svart trädbaserad implementering. Det ger ett effektivt sätt att lagra nyckel-värdepar i sorterad ordning.

De viktiga punkterna om Java TreeMap-klassen är:

  • Java TreeMap innehåller värden baserade på nyckeln. Den implementerar NavigableMap-gränssnittet och utökar klassen AbstractMap.
  • Java TreeMap innehåller endast unika element.
  • Java TreeMap kan inte ha en nullnyckel men kan ha flera nollvärden.
  • Java TreeMap är osynkroniserat.
  • Java TreeMap upprätthåller stigande ordning.

TreeMap-klassdeklaration

Låt oss se deklarationen för klassen java.util.TreeMap.

byta namn på katalogen linux
 public class TreeMap extends AbstractMap implements NavigableMap, Cloneable, Serializable 

TreeMap klassparametrar

Låt oss se parametrarna för klassen java.util.TreeMap.

    K: Det är den typ av nycklar som underhålls av denna karta.I: Det är typen av mappade värden.

Konstruktörer av Java TreeMap-klassen

KonstruktörBeskrivning
TreeMap()Den används för att konstruera en tom trädkarta som kommer att sorteras med den naturliga ordningen för dess nyckel.
TreeMap(Comparator comparator)Den används för att konstruera en tom trädbaserad karta som kommer att sorteras med hjälp av komparatorkomp.
Trädkarta (karta m)Den används för att initiera en trädkarta med posterna från m , som kommer att sorteras med hjälp av nycklarnas naturliga ordning.
Trädkarta(Sorterad karta m)Den används för att initiera en trädkarta med posterna från SortedMap sm , som kommer att sorteras i samma ordning som sm.

Metoder för Java TreeMap-klassen

MetodBeskrivning
Map.Entry ceilingEntry(K-nyckel)Det returnerar nyckel-värdeparet som har den minsta nyckeln, större än eller lika med den angivna nyckeln, eller null om det inte finns någon sådan nyckel.
K roofKey (K key)Den returnerar den minsta nyckeln, större än den angivna nyckeln eller null om det inte finns någon sådan nyckel.
void clear()Den tar bort alla nyckel-värdepar från en karta.
Object clone()Den returnerar en ytlig kopia av TreeMap-instansen.
Comparator comparator()Den returnerar komparatorn som ordnar nyckeln i ordning, eller null om kartan använder den naturliga ordningen.
NavigableSet descendingKeySet()Den returnerar en NavigableSet-vy i omvänd ordning av nycklarna som finns på kartan.
NavigableMap descendingMap()Den returnerar de angivna nyckel-värdeparen i fallande ordning.
Map.Entry firstEntry()Den returnerar nyckel-värdeparet som har den minsta nyckeln.
Map.Entry floorEntry(K-nyckel)Den returnerar den största nyckeln, mindre än eller lika med den specificerade nyckeln, eller null om det inte finns någon sådan nyckel.
void forEach (BiConsumer action)Den utför den givna åtgärden för varje post i kartan tills alla poster har bearbetats eller åtgärden ger ett undantag.
SortedMap headMap(K toKey)Den returnerar nyckel-värdeparen vars nycklar är strikt mindre än toKey.
NavigableMap headMap (K toKey, inklusive boolean)Den returnerar nyckel-värdeparen vars nycklar är mindre än (eller lika med om inklusive är sant) toKey.
Map.Entry higherEntry(K-tangent)Den returnerar den minsta nyckeln som är strikt större än den givna nyckeln, eller null om det inte finns någon sådan nyckel.
K högre tangent (K tangent)Den används för att returnera true om denna karta innehåller en mappning för den angivna nyckeln.
Ställ in keySet()Det returnerar samlingen av nycklar som finns på kartan.
Map.Entry lastEntry()Den returnerar nyckel-värdeparet som har den största nyckeln, eller null om det inte finns någon sådan nyckel.
Map.Entry lowerEntry(K-tangent)Den returnerar en nyckel-värde-mappning associerad med den största nyckeln som är strikt mindre än den givna nyckeln, eller null om det inte finns någon sådan nyckel.
K lägre tangent (K tangent)Den returnerar den största nyckeln strikt mindre än den givna nyckeln, eller null om det inte finns någon sådan nyckel.
NavigableSet navigableKeySet()Den returnerar en NavigableSet-vy av nycklarna i denna karta.
Map.Entry pollFirstEntry()Den tar bort och returnerar en nyckel-värde-mappning som är associerad med den minsta nyckeln i denna karta, eller null om kartan är tom.
Map.Entry pollLastEntry()Den tar bort och returnerar en nyckel-värde-mappning som är associerad med den största nyckeln i denna karta, eller null om kartan är tom.
V put(K-nyckel, V-värde)Den infogar det angivna värdet med den angivna nyckeln i kartan.
void putAll(Map map)Den används för att kopiera alla nyckel-värdepar från en karta till en annan karta.
V ersätt (K-nyckel, V-värde)Den ersätter det angivna värdet för en angiven nyckel.
boolean replace(K-nyckel, V oldValue, V newValue)Det ersätter det gamla värdet med det nya värdet för en angiven nyckel.
void replaceAll (BiFunction-funktion)Den ersätter varje posts värde med resultatet av att anropa den givna funktionen på den posten tills alla poster har bearbetats eller funktionen ger ett undantag.
NavigableMap subMap(K fromKey, boolean fromInclusive, K toKey, boolean toInclusive)Den returnerar nyckel-värdepar vars nycklar sträcker sig från fromKey till toKey.
SortedMap subMap(K fromKey, K toKey)Den returnerar nyckel-värdepar vars nycklar sträcker sig från från Key, inklusive, till toKey, exklusiv.
SortedMap tailMap(K frånKey)Den returnerar nyckel-värdepar vars nycklar är större än eller lika med fromKey.
NavigableMap tailMap (K fromKey, boolean inklusive)Den returnerar nyckel-värdepar vars nycklar är större än (eller lika med, om inklusive är sant) fromKey.
boolean containsKey(Objektnyckel)Den returnerar sant om kartan innehåller en mappning för den angivna nyckeln.
boolean containsValue(Objektvärde)Den returnerar sant om kartan mappar en eller flera nycklar till det angivna värdet.
K firstKey()Den används för att returnera den första (lägsta) nyckeln för närvarande i denna sorterade karta.
V get (objektnyckel)Den används för att returnera det värde som kartan mappar den angivna nyckeln till.
K lastKey()Den används för att returnera den sista (högsta) nyckeln för närvarande i den sorterade kartan.
V ta bort (objektnyckel)Den tar bort nyckel-värdeparet för den angivna nyckeln från kartan.
UppsättningentrySet()Den returnerar en inställd vy av mappningarna som finns på kartan.
int storlek()Den returnerar antalet nyckel-värdepar som finns i hashtabellen.
Samlingsvärden()Den returnerar en samlingsvy av värdena som finns i kartan.

Java TreeMap Exempel

 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 Exempel: 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()); } } } 

Produktion:

vad är en hashset i java
 Before invoking remove() method 100 Amit 101 Vijay 102 Ravi 103 Rahul After invoking remove() method 100 Amit 101 Vijay 103 Rahul 

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

Vad är skillnaden mellan HashMap och TreeMap?

HashMapTrädkarta
1) HashMap kan innehålla en null-nyckel.TreeMap kan inte innehålla någon null-nyckel.
2) HashMap upprätthåller ingen ordning.TreeMap upprätthåller stigande ordning.

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

Produktion:

 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