logo

Јава ТрееМап класа

Јава ТрееМап хијерархија класа

Јава ТрееМап класа је имплементација заснована на црвено-црном стаблу. Обезбеђује ефикасно средство за чување парова кључ-вредност у сортираном редоследу.

Важне тачке о Јава ТрееМап класи су:

  • Јава ТрееМап садржи вредности засноване на кључу. Он имплементира интерфејс НавигаблеМап и проширује класу АбстрацтМап.
  • Јава ТрееМап садржи само јединствене елементе.
  • Јава ТрееМап не може имати нулл кључ, али може имати више нул вредности.
  • Јава ТрееМап није синхронизован.
  • Јава ТрееМап одржава растући редослед.

Декларација класе ТрееМап

Хајде да видимо декларацију за класу јава.утил.ТрееМап.

рекао је Мадхури
 public class TreeMap extends AbstractMap implements NavigableMap, Cloneable, Serializable 

Параметри класе ТрееМап

Хајде да видимо параметре за класу јава.утил.ТрееМап.

    К: То је тип кључева који одржава ова мапа.ИН: То је тип мапираних вредности.

Конструктори класе Јава ТрееМап

ЦонструцторОпис
ТрееМап()Користи се за конструисање празне мапе стабла која ће бити сортирана по природном редоследу свог кључа.
ТрееМап (компаратор компаратор)Користи се за конструисање празне мапе засноване на стаблу која ће бити сортирана коришћењем компараторског компаратора.
ТрееМап (Мапа м)Користи се за иницијализацију мапе дрвета са уносима из м , који ће бити сортиран коришћењем природног редоследа кључева.
ТрееМап (СортедМап м)Користи се за иницијализацију мапе дрвета са уносима из СортедМап-а см , који ће бити сортиран истим редоследом као см.

Методе класе Јава ТрееМап

МетодОпис
Мап.Ентри цеилингЕнтри(К тастер)Враћа пар кључ-вредност који има најмањи кључ, већи или једнак наведеном кључу или нулл ако такав кључ не постоји.
К цеилингКеи (К кључ)Враћа најмањи кључ, већи од наведеног кључа или нулл ако такав кључ не постоји.
воид цлеар()Уклања све парове кључ/вредност са мапе.
Објецт цлоне()Враћа плитку копију ТрееМап инстанце.
Цомпаратор цомпаратор()Враћа компаратор који распоређује кључ по редоследу, или нулл ако мапа користи природни редослед.
НавигаблеСет десцендингКеиСет()Враћа поглед НавигаблеСет обрнутог редоследа кључева садржаних у мапи.
НавигаблеМап десцендингМап()Враћа наведене парове кључ/вредност у опадајућем редоследу.
Мап.Ентри фирстЕнтри()Враћа пар кључ-вредност који има најмањи кључ.
Мапа.Ентри флоорЕнтри(К тастер)Враћа највећи кључ, мањи или једнак наведеном кључу, или нулл ако такав кључ не постоји.
воид форЕацх (акција БиЦонсумер)Изводи дату радњу за сваки унос на мапи док се сви уноси не обрађују или док акција не изазове изузетак.
СортедМап хеадМап (К тоКеи)Враћа парове кључ/вредност чији су кључеви стриктно мањи од тоКеи.
НавигаблеМап хеадМап (К тоКеи, укључујући логичке вредности)Враћа парове кључ/вредност чији су кључеви мањи од (или једнаки ако је инклузивно тачно) уКеи.
Мап.Ентри абовеЕнтри(К кључ)Враћа најмањи кључ стриктно већи од датог кључа или нулл ако такав кључ не постоји.
К виши кључ (К кључ)Користи се за враћање труе ако ова мапа садржи мапирање за наведени кључ.
Постави кеиСет()Враћа колекцију кључева која постоји на мапи.
Мап.Ентри ластЕнтри()Враћа пар кључ-вредност који има највећи кључ или нулл ако такав кључ не постоји.
Мап.Ентри ловерЕнтри(К тастер)Враћа мапирање кључ/вредност повезано са највећим кључем стриктно мањим од датог кључа или нулл ако такав кључ не постоји.
К доњи кључ (тастер К)Враћа највећи кључ стриктно мањи од датог кључа или нулл ако такав кључ не постоји.
НавигаблеСет навигаблеКеиСет()Враћа НавигаблеСет приказ кључева садржаних у овој мапи.
Мап.Ентри поллФирстЕнтри()Он уклања и враћа мапирање кључ/вредност повезано са најмањим кључем на овој мапи или нулл ако је мапа празна.
Мап.Ентри поллЛастЕнтри()Он уклања и враћа мапирање кључ/вредност повезано са највећим кључем на овој мапи или нулл ако је мапа празна.
В пут (К кључ, В вредност)Убацује наведену вредност са наведеним кључем у мапу.
воид путАлл (мапа мапа)Користи се за копирање свих парова кључ-вредност са једне карте на другу мапу.
В замени (К кључ, В вредност)Он замењује наведену вредност за одређени кључ.
логички замена (К кључ, В стара вредност, В нова вредност)Он замењује стару вредност новом вредношћу за наведени кључ.
воид реплацеАлл (функција БиФунцтион)Замењује вредност сваког уноса резултатом позивања дате функције на том уносу док се сви уноси не обрађују или док функција не избаци изузетак.
Подмапа НавигаблеМап(К од кључа, логички од укључиво, К до кључа, логички до укључиво)Враћа парове кључ/вредност чији се кључеви крећу од кључа до кључа.
Подмапа сортиране мапе (К од кључа, К до кључа)Враћа парове кључ/вредност чији се кључеви крећу од кључа, укључујући, до кључа, искључивања.
СортедМап таилМап(К фромКеи)Враћа парове кључ/вредност чији су кључеви већи или једнаки фромКеи.
НавигаблеМап таилМап(К фромКеи, укључујући логички)Враћа парове кључ/вредност чији су кључеви већи од (или једнаки, ако је инклузивно тачно) фромКеи.
боолеан цонтаинсКеи (кључ објекта)Враћа тачно ако мапа садржи мапирање за наведени кључ.
боолеан цонтаинсВалуе(вредност објекта)Враћа тачно ако мапа мапира један или више кључева на наведену вредност.
К први кључ()Користи се за враћање првог (најнижег) кључа тренутно у овој сортираној мапи.
В гет (кључ објекта)Користи се за враћање вредности на коју мапа пресликава наведени кључ.
К ластКеи()Користи се за враћање последњег (највишег) кључа тренутно у сортираној мапи.
В уклони (кључ објекта)Уклања пар кључ-вредност наведеног кључа са мапе.
КомплетентриСет()Враћа постављени приказ мапирања садржаних у мапи.
инт сизе()Враћа број парова кључ/вредност који постоје у хеш табели.
Вредности колекције()Враћа приказ колекције вредности садржаних у мапи.

Пример Јава ТрееМап

 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 

Пример Јава ТрееМап: ремове()

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

Излаз:

спајање сорти
 Before invoking remove() method 100 Amit 101 Vijay 102 Ravi 103 Rahul After invoking remove() method 100 Amit 101 Vijay 103 Rahul 

Јава ТрееМап Пример: НавигаблеМап

 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} 

Јава ТрееМап Пример: СортедМап

 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} 

Која је разлика између ХасхМап-а и ТрееМап-а?

ХасхМапТрееМап
1) ХасхМап може да садржи један нул кључ.ТрееМап не може да садржи ниједан нулл кључ.
2) ХасхМап не одржава ред.ТрееМап одржава растући редослед.

Јава ТрееМап Пример: књига

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

Излаз:

 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