logo

Јава Мап Интерфаце

Мапа садржи вредности на основу кључа, односно пара кључа и вредности. Сваки пар кључа и вредности познат је као унос. Мапа садржи јединствене кључеве.

Мапа је корисна ако морате да претражујете, ажурирате или бришете елементе на основу кључа.

Хијерархија Јава мапа

Постоје два интерфејса за имплементацију Мапе у Јави: Мап и СортедМап и три класе: ХасхМап, ЛинкедХасхМап и ТрееМап. Хијерархија Јава мапе је дата у наставку:

Хијерархија Јава мапа

Мапа не дозвољава дупликате кључева, али можете имати дупле вредности. ХасхМап и ЛинкедХасхМап дозвољавају нулл кључеве и вредности, али ТрееМап не дозвољава никакав нулл кључ или вредност.

Мапу се не може прећи, тако да морате да је конвертујете у Сет користећи кеиСет() или ентриСет() методом.

КласаОпис
ХасхМап ХасхМап је имплементација Мапе, али не одржава никакав ред.
ЛинкедХасхМапЛинкедХасхМап је имплементација Мапе. Наслеђује класу ХасхМап. Одржава редослед уметања.
ТрееМап ТрееМап је имплементација Мапе и СортедМап-а. Одржава узлазни ред.

Корисне методе интерфејса мапе

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

Мап.Интерфаце

Ентри је подинтерфејс Мапе. Тако ће нам се приступити преко Мап.Ентри наме. Враћа приказ збирке мапе, чији су елементи ове класе. Пружа методе за добијање кључа и вредности.

Методе интерфејса Мап.Ентри

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

Пример Јава мапе: Негенерички (стари стил)

 //Non-generic import java.util.*; public class MapExample1 { public static void main(String[] args) { Map map=new HashMap(); //Adding elements to map map.put(1,'Amit'); map.put(5,'Rahul'); map.put(2,'Jai'); map.put(6,'Amit'); //Traversing Map Set set=map.entrySet();//Converting to Set so that we can traverse Iterator itr=set.iterator(); while(itr.hasNext()){ //Converting to Map.Entry so that we can get key and value separately Map.Entry entry=(Map.Entry)itr.next(); System.out.println(entry.getKey()+' '+entry.getValue()); } } } 

Излаз:

 1 Amit 2 Jai 5 Rahul 6 Amit 

Пример Јава мапе: генерички (нови стил)

 import java.util.*; class MapExample2{ public static void main(String args[]){ Map map=new HashMap(); map.put(100,'Amit'); map.put(101,'Vijay'); map.put(102,'Rahul'); //Elements can traverse in any order for(Map.Entry m:map.entrySet()){ System.out.println(m.getKey()+' '+m.getValue()); } } } 

Излаз:

 102 Rahul 100 Amit 101 Vijay 

Пример Јава мапе: цомпарингБиКеи()

 import java.util.*; class MapExample3{ public static void main(String args[]){ Map map=new HashMap(); map.put(100,'Amit'); map.put(101,'Vijay'); map.put(102,'Rahul'); //Returns a Set view of the mappings contained in this map map.entrySet() //Returns a sequential Stream with this collection as its source .stream() //Sorted according to the provided Comparator .sorted(Map.Entry.comparingByKey()) //Performs an action for each element of this stream .forEach(System.out::println); } } 

Излаз:

 100=Amit 101=Vijay 102=Rahul 

Пример Јава мапе: цомпарингБиКеи() у опадајућем редоследу

 import java.util.*; class MapExample4{ public static void main(String args[]){ Map map=new HashMap(); map.put(100,'Amit'); map.put(101,'Vijay'); map.put(102,'Rahul'); //Returns a Set view of the mappings contained in this map map.entrySet() //Returns a sequential Stream with this collection as its source .stream() //Sorted according to the provided Comparator .sorted(Map.Entry.comparingByKey(Comparator.reverseOrder())) //Performs an action for each element of this stream .forEach(System.out::println); } } 

Излаз:

 102=Rahul 101=Vijay 100=Amit 

Пример Јава мапе: цомпарингБиВалуе()

 import java.util.*; class MapExample5{ public static void main(String args[]){ Map map=new HashMap(); map.put(100,'Amit'); map.put(101,'Vijay'); map.put(102,'Rahul'); //Returns a Set view of the mappings contained in this map map.entrySet() //Returns a sequential Stream with this collection as its source .stream() //Sorted according to the provided Comparator .sorted(Map.Entry.comparingByValue()) //Performs an action for each element of this stream .forEach(System.out::println); } } 

Излаз:

 100=Amit 102=Rahul 101=Vijay 

Пример Јава мапе: цомпарингБиВалуе() у опадајућем редоследу

 import java.util.*; class MapExample6{ public static void main(String args[]){ Map map=new HashMap(); map.put(100,'Amit'); map.put(101,'Vijay'); map.put(102,'Rahul'); //Returns a Set view of the mappings contained in this map map.entrySet() //Returns a sequential Stream with this collection as its source .stream() //Sorted according to the provided Comparator .sorted(Map.Entry.comparingByValue(Comparator.reverseOrder())) //Performs an action for each element of this stream .forEach(System.out::println); } } 

Излаз:

 101=Vijay 102=Rahul 100=Amit