Sleutelverskil – TreeSet vs TreeMap
'n Skikking word gebruik om 'n stel data-elemente van dieselfde tipe te stoor. Die meeste programmeertale ondersteun Arrays. Selfs al kan 'n skikking verskeie waardes stoor; daar is 'n groot nadeel. Sodra die skikking geskep is, is dit nie moontlik om dit te verander nie. As die programmeerder 'n skikking van 10 elemente verklaar het, kan hy nie 15 elemente stoor nie. Wanneer die programmeerder 'n skikking van 10 elemente verklaar en slegs 5 elemente stoor, is die res van die toegekende geheue 'n vermorsing. Programmeringstale soos Java het Versamelings om data-elemente dinamies te stoor. Daar is 'n aantal versamelings. Versamelings help om elemente by te voeg, te verwyder en ander bewerkings uit te voer. Die basis-koppelvlak staan bekend as Collection. Stel, Lys en Tou is 'n paar koppelvlakke wat die versameling-koppelvlak uitbrei. Kaart is 'n koppelvlak van versameling hiërargie, maar dit brei nie die versameling koppelvlak uit nie. TreeSet is 'n klas wat die Stel-koppelvlak implementeer en die elemente in stygende volgorde stoor. TreeMap is 'n klas wat Map koppelvlak implementeer en sleutel, waarde pare in stygende volgorde stoor. Dit is die belangrikste verskil. Hierdie artikel bespreek die verskil tussen TreeSet en TreeMap.
Wat is TreeSet?
The TreeSet is 'n klas wat Stel-koppelvlak implementeer. Die TreeSet behou unieke elemente. TreeSet implementeer NavigableSet-koppelvlak. Die navigeerbare koppelvlak brei SortedSet, Set, Collection en Iterable koppelvlakke uit in hiërargiese volgorde. TreeSet stoor die elemente in stygende volgorde. As die volgorde van invoeging A, C, B is, sal die TreeSet hulle as A, B, C stoor. Daar is metodes van TreeSet. Die byvoegmetode word gebruik om 'n element by die Stel te voeg. Die verwyderingsmetode word gebruik om 'n gespesifiseerde element te verwyder. Die duidelike metode word gebruik om alle elemente te verwyder. Die bevat-metode gee 'n waar as die gespesifiseerde element teenwoordig is in die Stel. Dit is 'n paar metodes wat deur TreeSet verskaf word. Verwys na die onderstaande program.
Figuur 01: Program met TreeSet
Volgens bogenoemde program is Treeset 'n voorwerp van tipe TreeSet. Dit kan Strings stoor. Die elemente word bygevoeg deur die add-metode te gebruik. Die invoegvolgorde is A, C, D en B. Deur die iterator te gebruik, word die gestoorde waardes op die skerm gedruk. Die elemente word gestoor in die volgorde A, B, C, D. Daarom handhaaf die TreeSet 'n stygende volgorde van die elemente van die Stel. As daar 'n ander element as "D" is, sal dit nie druk nie, want die element D bestaan reeds in die Stel. Dit stoor altyd unieke elemente.
Wat is TreeMap?
TreeMap is 'n klas wat Map-koppelvlak implementeer. Kaart ondersteun sleutel-waarde-pare. Elke sleutel, waardepaar is 'n inskrywing. Elke sleutel is uniek en het 'n ooreenstemmende waarde. Die containsKey-metode word gebruik om 'n spesifieke sleutel te vind, terwyl die containsValue-metode gebruik word om 'n spesifieke waarde te vind. Die get-metode word gebruik om die waarde te vind wat ooreenstem met die gegewe sleutel. Die put-metode word gebruik om 'n waarde met die gegewe sleutel te stoor. Dit is ook moontlik om 'n element by 'n spesifieke sleutel te verwyder deur die verwyderingsmetode te gebruik. Dit is 'n paar algemene metodes van Map-koppelvlak. Dit help om elemente op grond van die sleutel te soek, in te voeg en uit te vee. TreeMap klas implementeer NavigableMap. NavigableMap brei SortedMap uit. SortedMap brei Kaart uit. Daarom kan die metodes van Map met TreeMap gebruik word. Verwys na die onderstaande program.
Figuur 02: Program met TreeMap
Volgens bogenoemde program word 'n voorwerp van TreeMap geskep. Die programmeerder kan elemente byvoeg deur die voorwerp te gebruik. Die put metode word gebruik om sleutel, waarde pare in te voeg. Die get-metode word gebruik met die spesifieke sleutel om die elemente te gaan haal. Die programmeerder kan Map. Entry gebruik om alle sleutels en waardes te druk. Wanneer die uitset waargeneem word, behou dit nie die ingevoegde volgorde nie. Dit stoor die elemente in stygende volgorde.
Wat is die ooreenkomste tussen TreeSet en TreeMap?
- Beide TreeSet en TreeMap is in die versamelinghiërargie.
- Beide TreeSet en TreeMap handhaaf die stygende volgorde.
- Beide TreeSet en TreeMap kan baie elemente stoor en manipuleer.
Wat is die verskil tussen TreeSet en TreeMap?
TreeSet vs TreeMap |
|
TreeSet is 'n klas wat die Stel-koppelvlak implementeer en die elemente in stygende volgorde stoor. | TreeMap is 'n klas wat Map-koppelvlak implementeer en sleutel-, waardepare in stygende volgorde stoor. |
Geïmplementeerde koppelvlak | |
TreeSet implemente Stel-koppelvlak. | TreeMap implementeer kaartkoppelvlak. |
Opsomming – TreeSet vs TreeMap
'n Skikking word gebruik om 'n stel elemente te stoor, maar dit help nie om elemente dinamies te stoor nie. Programmeringstale soos Java bevat versamelings om data-elemente dinamies te stoor. Versameling is die basisklas in versamelinghiërargie. Dit bestaan uit klasse en koppelvlakke om bewerkings uit te voer soos byvoeging, verwydering van elemente. Stel en kaart is twee koppelvlakke van versamelinghiërargie. TreeSet is 'n klas wat die Stel-koppelvlak implementeer en die elemente in stygende volgorde stoor. TreeMap is 'n klas wat Map koppelvlak implementeer en sleutel, waarde pare in stygende volgorde stoor. Dit is die verskil tussen TreeSet en TreeMap.