Pagrindinis skirtumas - „HashMap“ir „TreeMap“
Programuojant yra įvairūs duomenų rinkimo mechanizmai. Kolekcijos yra vienas iš duomenų saugojimo būdų. Programavimo kalbos, tokios kaip „Java“, naudoja kolekcijas. Tai yra sistema su klasėmis ir sąsajomis, skirta duomenų elementų rinkiniui laikyti ir valdyti. Įprastame masyve yra fiksuotas saugomų elementų skaičius. Tai yra masyvų apribojimas. Vietoj to, programuotojas gali naudoti kolekcijas. Tokias operacijas kaip įterpimas, ištrynimas, rūšiavimas ir paieška galima atlikti naudojant kolekcijas. „Java“sistemoje „Map“sąsaja priklauso kolekcijoms. Žemėlapis naudojamas duomenims atvaizduoti rakte, reikšmių porose. Yra tik unikalūs raktai, ir kiekvienas turi atitinkamą vertę. „HashMap“ir „TreeMap“yra klasės, įgyvendinančios „Map“sąsają.„HashMap“yra žemėlapių rinkinio klasė, naudojama raktų ir reikšmių poroms, kurios nepalaiko konkrečios duomenų elementų tvarkos, saugoti. „TreeMap“yra žemėlapių rinkinio klasė, naudojama raktų ir reikšmių poroms, palaikančioms didėjančią duomenų elementų tvarką, saugoti. Pagrindinis skirtumas tarp „HashMap“ir „TreeMap“yra tas, kad „HashMap“nepalaiko tam tikros tvarkos duomenų elementuose, o „TreeMap“palaiko didėjančią duomenų elementų tvarką.
TURINYS
1. Apžvalga ir pagrindiniai skirtumai
2. Kas yra „HashMap“
3. Kas yra „TreeMap“
4. „HashMap“ir „TreeMap“panašumai
5. Šoninis palyginimas - „HashMap“ir „TreeMap“lentelės forma
6. Santrauka
Kas yra „HashMap“?
„HashMap“yra klasė, įgyvendinanti žemėlapio sąsają. Tai išplečia „AbstractMap“klasę ir įgyvendina „Map“sąsają. „HashMap“yra raktas, reikšmės poros. Kiekvienas elementas yra unikalus. Naudojant klavišą lengva rasti elementus „HashMap“. „HashMap“paskelbimas yra toks.
viešosios klasės „HashMap“praplečia „AbstractMap“įrankius „Map, Cloneable“, „Serializable“
K nurodo raktą, o V - reikšmę, atitinkančią tą konkretų raktą. Kiekvienas raktas, vertės pora yra „HashMap“įrašas.
01 pav. Žemėlapio sąsaja
Tarkime, kad taip suprastumėte scenarijų, kad suprastumėte „HaspMap“. Jei ten programuotojas nori išsaugoti studentų vardų ir atitinkamų indeksų skaičių rinkinį, jis gali naudoti „HashMap“. Studentų vardai naudojami norint rasti indekso numerius. Todėl raktai yra studentų vardai, o reikšmės yra indeksų skaičiai.
02 paveikslas: „HashMap“programa naudojant „Java“
Pagal minėtą programą yra sukurtas „HashMap“objektas. Tada programuotojas gali pridėti elementų naudodamas tą objektą. Vertės gali būti įterptos naudojant put metodą. Norėdami gauti reikšmes, programuotojas turėtų naudoti metodą get su raktu. Kai naudojate studentų sąrašą.get („150“); ji atspausdins atitinkamą vardą to indekso, kuris yra Ann. Jei programuotojas nori gauti visas reikšmes, jis gali naudoti „Map. Entry“, kad atspausdintų visus raktus ir reikšmes. Stebint išvestį galima pastebėti, kad „HashMap“nepalaiko konkrečios tvarkos. Elementai nespausdinami įterpta tvarka. Elementai spausdinami atsitiktine tvarka.
Kas yra „TreeMap“?
„TreeMap“yra „Java“klasė, įgyvendinanti „Map“sąsają. Panašiai kaip „HashMap“, jis taip pat naudojamas raktų, reikšmių poroms saugoti, tačiau didėjimo tvarka. „TreeMap“įgyvendina „NavigableMap“ir „NavigableMap“išplečia „SortedMap“, o „SortedMap“išplečia žemėlapį. Kiekvienas elementas yra unikalus. Deklaruoti „TreeMap“yra taip.
viešoji klasė „TreeMap“išplečia „AbstractMap“įrankius „NavigableMap“, „Cloneable“, „Serializable“
K nurodo raktą, o V - reikšmę, atitinkančią tą konkretų raktą. Kiekvienas raktas, reikšmės pora yra „TreeMap“įrašas.
03 paveikslas: „TreeMap“programa naudojant „Java“
Pagal minėtą programą yra sukurtas „TreeMap“objektas. Tada programuotojas gali pridėti elementų naudodamas tą objektą. Vertės gali būti įterptos naudojant put metodą. Norėdami gauti reikšmes, programuotojas turėtų naudoti metodą get su raktu. Kai naudojate studentų sąrašą.get („150“); ji atspausdins atitinkamą vardą to indekso, kuris yra Ann. Jei programuotojas nori gauti visas reikšmes, jis gali naudoti „Map. Entry“, kad atspausdintų visus raktus ir reikšmes. Stebint išvestį matyti, kad „TreeMap“palaiko tam tikrą tvarką. Elementai spausdinami didėjimo tvarka.
Kuo panašūs „HashMap“ir „TreeMap“?
- Tiek „HashMap“, tiek „TreeMap“įgyvendina žemėlapio sąsają.
- Tiek „HashMap“, tiek „TreeMap“gali saugoti ir valdyti daugelį elementų.
- Tiek „HashMap“, tiek „TreeMap“yra raktų, reikšmių poros.
- Tiek HashMap, tiek TreeMap gali turėti daug nulinių reikšmių.
- Nėra jokių apribojimų elementų, kuriuos galima saugoti tiek „HashMap“, tiek „TreeMap“, skaičiumi.
Kuo skiriasi „HashMap“ir „TreeMap“?
Skirtingas straipsnis viduryje prieš lentelę
„HashMap“ir „TreeMap“ |
|
„HashMap“yra žemėlapių rinkinio klasė, naudojama raktų ir reikšmių poroms, kurios nepalaiko konkrečios duomenų elementų tvarkos, saugoti. | „TreeMap“yra žemėlapių rinkinio klasė, naudojama raktų ir reikšmių poroms saugoti, kuri palaiko didėjančią duomenų elementų tvarką. |
Įsakymas | |
„HashMap“nepalaiko tvarkos. | „TreeMap“palaiko didėjimo tvarką. |
„Null Key“ | |
„HashMap“gali būti vienas nulinis raktas. | „TreeMap“negali turėti nulinio rakto. |
Spektaklis | |
„HashMap“yra greitesnis nei „TreeMap“. | „TreeMap“yra lėtesnis nei „HashMap“. |
Santrauka - „HashMap“ir „TreeMap“
Programavimo kalbose, tokiose kaip „Java“, yra rinkinio sistema. Masyvuose gali būti fiksuotas elementų skaičius. Todėl pradžioje masyvo dydis turėtų būti inicializuotas. Kolekcijose programuotojas gali laikyti daug elementų, jei reikia. Konkrečios sumos laikyti negalima. Žemėlapis yra sąsaja, priklausanti kolekcijos sistemai. „HashMap“yra žemėlapių rinkinio klasė, naudojama raktų ir reikšmių poroms, kurios nepalaiko tam tikros tvarkos duomenų elementuose, saugoti. „TreeMap“yra žemėlapių rinkinio klasė, naudojama raktų ir reikšmių poroms saugoti, kuri palaiko didėjančią duomenų elementų tvarką. Šiame straipsnyje aptariamas skirtumas tarp „HashMap“ir „TreeMap“, kuris įgyvendina žemėlapio sąsają. Skirtumas tarp „HashMap“ir „TreeMap“yra tas, kad „HashMap“nepalaiko tam tikros tvarkos duomenų elementuose, o „TreeMap“palaiko didėjančią duomenų elementų tvarką.