ХасхСет у Јави је један од најважнијих аспеката . Обично се користи за неуређено чување јединствених вредности. Кроз медиј овог чланка о ХасхСет-у на Јави, даћу вам комплетан опис шта је заправо ХасхСет и како га можете користити у својој апликацији.
Испод су теме обухваћене овим чланком:
основна структура Јава програма
- ХасхСет у Јави
- Јава ХасхСет вс ХасхМап
- ХасхСет Хиерарцхи
- Конструктори јава.утил.ХасхСет Цласс
- Методе класе јава.утил.ХасхСет
- Имплементација ХасхСет-а у Јава програм
Кренимо прво са разумевањем шта су ХасхСет у Јави.
ХасхСет у Јави
јава.утил.ХасхСет класа је члан оквира Јава колекција којинаслеђује класу АбстрацтСет испроводиКомплет приступ . Имплицитно примењује хештабле за креирање и чување колекције јединствених елемената. Хасхтабле није ништа друго него инстанца класе ХасхМап која користи хеширајући механизам за чување информација у ХасхСет-у.
Хеширање је поступак претварања информационог садржаја у јединствену вредност која је у народу познатија као хасх цоде. Овај хасхцоде се затим користи за индексирање података повезаних са кључем. Читав процес трансформације информационог кључа у хасхцоде изводи се интерно.
Сада да бих боље разумео ХасхСет у Јави, дозволите ми да набројим неколико његових карактеристика:
- ХасхСет у Јави не дозвољава дуплиране вредности.
- Може садржати нулл вредности.
- ХасхСет не следи редослед уметања за складиштење података, већ користи хасхцоде за индексирање вредности унутар.
- То је не- синхронизовано што га аутоматски чини нетачним.
- Класа ХасхСет такође примењује Цлонеабле иСеријализовани интерфејси.
Сад кад сте свесни шта је тачно ХасхСет на Јави, идемо даље са овим чланком и демистификујмо разлике између ХасхМап-а и ХасхСет-а на Јави.
Јава ХасхСет вс ХасхМап
ХасхСет | ХасхМап |
Опремајава.утил.Постави интерфејс | Опремајава.утил.Мап |
Похрањује податке као објекте | Чува податке у облику пара кључ / вредност |
ХасхСет захтева само један параметар за иницијализацију свог објекта | За иницијализацију свог објекта потребна су два параметра (кључ, вредност) |
Не дозвољава дуплиране елементе | Не дозвољава дуплиране кључеве, али можете да складиштите дупликате вредности |
Омогућава једну нулл вредност | Омогућава један нулл кључ и било који број нулл вредности |
ХасхСет користи адд ()метода за додавање или чување података | ХасхМап користи методу пут () за чување података |
Сада када имате јасну разлику између ХасхМап-а и ХасхСет-а, фокусирајмо се поново на ХасхСет и заронимо дубље у њега. У следећем одељку овог чланка упознаћу вас са комплетном хијерархијом ХасхСет-а на Јави.
ХасхСет Хиерарцхи у Јави
Као што видите из доле датог дијаграма,Класа ХасхСет имплементира Сет интерфејс. Интерфејс Сет даље наслеђује интерфејс Цоллецтион који на крају проширује интерфејс Итерабле у хијерархијском редоследу.
Сада, крећући се даље са овим чланком о ХасхСет-у у Јави, погледајмо разне конструктори коју подржава ова класа.
Конструктори јава.утил.ХасхСет Цласс
Градитељ | Опис |
ХасхСет () | Ово је подразумевани конструктор класе ХасхСет |
ХасхСет (инт капацитет) | Овај конструктор се користи за иницијализацију почетног капацитета скупа хеша. Капацитет може динамички расти додавањем нових елемената |
ХасхСет (инт капацитет, флоат лоадЦапацити) | Овај конструктор се користи за иницијализацију почетног капацитета постављеног хеша заједно са капацитетом оптерећења |
ХасхСет (Колекција ц) | Овај конструктор се користи за иницијализацијухеш постављен коришћењем елемената из колекције ц |
То су била четири конструктора класе ХасхСет у . Хајде сада да сазнамо које су разне дефинисано у Јава ХасхСет-у.
Методе класе јава.утил.ХасхСет
Метод | Опис |
боолеан адд (Објецт обј) | Овај метод помаже у додавању наведеног елемента у ХасхСет само ако није присутан |
воид цлеар () | Ова метода помаже у уклањању свих елемената из ХасхСет-а |
Клон објекта () | Ова метода враћа плитку копију инстанце ХасхСет, а не клонове елемената ХасхСет |
боолеан садржи (објекат о) | Ова метода враћа труе ако је прослеђени елемент присутан у ХасхСет-у |
боолеан исЕмпти () | Ова метода враћа труе у случају да је ХасхСет празан |
Итератор итератор () | Ова метода враћа итератор преко елемената присутних у ХасхСет-у |
логичко уклањање (објекат о) | Овај метод помаже у уклањању наведеног елемента из ХасхСет-а ако је присутан |
инт величина () | Ова метода враћа укупан број елемената присутних у ХасхСет-у |
Заједно са горе наведеним методама, класа ХасхСет у Јави садржи и из својих супер класа.
Покушајмо сада да применимо ове методе и навлажимо ноге кодирањем.
Имплементација ХасхСет-а у Јава програм
У доњем примеру ћемо покушати да применимо бројне методе које пружа класа ХасхСет.
импорт јава.утил.ХасхСет импорт јава.утил. * јавна класа СамплеХасхСет {публиц статиц воид маин (Стринг [] аргс) {// Стварање скупа ХасхСет едуЦоурсес = нев ХасхСет () // Додавање нових елемената у ХасхСет едуЦоурсес.адд ('Велики подаци') едуЦоурсес.адд ('Ноде.јс') едуЦоурсес.адд ('Јава') едуЦоурсес.адд ('Питхон') едуЦоурсес.адд ('Блоцкцхаин') едуЦоурсес.адд ('ЈаваСцрипт') едуЦоурсес. адд ('Селениум') едуЦоурсес.адд ('АВС') едуЦоурсес.адд ('Мацхине Леарнинг') едуЦоурсес.адд ('РПА') // Додавање дупликата елемената биће занемарено едуЦоурсес.адд ('Јава') едуЦоурсес.адд ('РПА') Систем.оут.принтлн (едуЦоурсес) // Провери да ли ХасхСет садржи одређени елемент Стринг миЦоурсе = 'Ноде.јс' иф (едуЦоурсес.цонтаинс (миЦоурсе)) {Систем.оут.принтлн (миЦоурсе + ' је на листи курсева. ')} елсе {Систем.оут.принтлн (миЦоурсе +' није на листи курсева. ')} // Сортирање едуЦоурсес-а користећи Лист Лист лист = нев АрраиЛист (едуЦоурсес) Цоллецтионс.сорт (лист) // Штампање сортираних елемената система ХасхСет.оут.принтлн (' Штампање курсева у сортираном редоследу помоћу листе: '+ лист) // Уклањање предмета из ХасхСет-а помоћу ремове () едуЦоурсес.ремове (' Питхон ') // Итерирање ставки ХасхСет Систем.оут.принтлн (' Итерирање листе курсева након уклањања Питхон: ') Итератор и = едуЦоурсес.итератор () вхиле (и.хасНект ()) Систем.оут.принтлн (и.нект ()) // Креирање другог објекта ХасхСет ХасхСет едуНевЦоурсес = нев ХасхСет () едуНевЦоурсес.адд ( 'Ноде.јс') едуНевЦоурсес.адд ('Питхон') едуНевЦоурсес.адд ('Мацхине Леарнинг') // Уклањање свих нових елемената из ХасхСет-а едуЦоурсес.ремовеАлл (едуНевЦоурсес) Систем.оут.принтлн ('Након позивања ремовеАлл () преостали курсеви метода: '+ едуЦоурсес) // Уклањање елемената на основу наведеног стања едуЦоурсес.ремовеИф (стр-> стр.цонтаинс (' Јава ')) Систем.оут.принтлн (' Након позивања методе ремовеИф (): '+ едуЦоурсес) // Уклањање елемената из едуЦоурсес који су наведени у едуНевЦоурсес едуЦоурсес.ретаинАлл (едуНевЦоурсес) Систем.оут.принтлн ('ХасхСет афтер' + 'ретаинАлл () оператион: '+ едуНевЦоурсес) // Уклањање свих елемената доступних у скупу едуЦоурсес.цлеар () Систем.оут.принтлн (' Након позивања методе цлеар (): '+ едуЦоурсес)}}
Када извршите горњи код, он ће вам дати доле приказани излаз.
Овим смо дошли до краја овог чланка. Надам се да сам успео да одржим концепте јасним и јасним. Можете сазнати више о пролазећи кроз наше .
стрингови у јави су непроменљиви
Сад кад сте схватили шта је ХасхСет у Јави, погледајте Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250 000 задовољних ученика раширених широм света. Едурекин курс за обуку и сертификацију Јава Ј2ЕЕ и СОА дизајниран је за студенте и професионалце који желе да буду Јава програмер. Курс је дизајниран да вам пружи почетну предност у Јава програмирању и обучи вас како за основне тако и за напредне Јава концепте, заједно са разним Јава оквирима попут Хибернате & Спринг.
Имате питање за нас? Молимо вас да га помињете у одељку за коментаре овог чланка „ХасхСет у Јави“ и јавићемо вам се што је пре могуће.