Kulcskülönbség – TreeSet vs TreeMap
Egy tömb az azonos típusú adatelemek halmazának tárolására szolgál. A legtöbb programozási nyelv támogatja a tömböket. Annak ellenére, hogy egy tömb több értéket is tárolhat; van egy nagy hátránya. A tömb létrehozása után nem lehet módosítani. Ha a programozó 10 elemből álló tömböt deklarált, akkor nem tud 15 elemet tárolni. Amikor a programozó deklarál egy 10 elemből álló tömböt, és csak 5 elemet tárol, a lefogl alt memória többi része pazarlás. Az olyan programozási nyelvek, mint a Java, gyűjteményekkel rendelkeznek az adatelemek dinamikus tárolására. Számos gyűjtemény létezik. A gyűjtemények segítik az elemek hozzáadását, eltávolítását és egyéb műveleteket. Az alap interfész Gyűjtemény néven ismert. A Set, List és Queue néhány olyan interfész, amely kiterjeszti a Gyűjtemény felületét. A térkép a gyűjteményi hierarchia felülete, de nem terjeszti ki a gyűjtemény felületét. A TreeSet egy olyan osztály, amely megvalósítja a Set felületet, és növekvő sorrendben tárolja az elemeket. A TreeMap egy olyan osztály, amely megvalósítja a Map felületet, és növekvő sorrendben tárolja a kulcs-érték párokat. Ez a legfontosabb különbség. Ez a cikk a TreeSet és a TreeMap közötti különbséget tárgyalja.
Mi az a TreeSet?
A TreeSet egy olyan osztály, amely megvalósítja a Set interfészt. A TreeSet egyedi elemeket tart fenn. A TreeSet megvalósítja a NavigableSet interfészt. A Navigálható felület hierarchikus sorrendben kiterjeszti a SortedSet, Set, Collection és Iterable felületeket. A TreeSet az elemeket növekvő sorrendben tárolja. Ha a beillesztés sorrendje A, C, B, a TreeSet A, B, C néven tárolja őket. Vannak TreeSet metódusok. Az add módszerrel elemet adunk a készlethez. Az eltávolítási módszer egy adott elem eltávolítására szolgál. A tiszta módszert az összes elem eltávolítására használják. A include metódus igaz értéket ad vissza, ha a megadott elem jelen van a készletben. Ezek a TreeSet által biztosított módszerek. Tekintse meg az alábbi programot.
01. ábra: Programozás a TreeSet használatával
A fenti program szerint a Treeset egy TreeSet típusú objektum. Stringeket tud tárolni. Az elemek hozzáadása módszerrel történik. A beillesztési sorrend A, C, D és B. Az iterátor segítségével a tárolt értékek kinyomtatásra kerülnek a képernyőre. Az elemek tárolása A, B, C, D sorrendben történik. Ezért a TreeSet fenntartja a halmaz elemeinek növekvő sorrendjét. Ha van egy másik „D” elem, akkor nem nyomtat, mert a D elem már létezik a készletben. Mindig egyedi elemeket tárol.
Mi az a TreeMap?
TreeMap egy osztály, amely megvalósítja a Map interfészt. A Map támogatja a kulcs-érték párokat. Minden kulcs, érték pár egy bejegyzés. Minden kulcs egyedi, és ennek megfelelő értéke van. A includeKey metódus egy adott kulcs, míg a includeValue metódus egy adott érték keresésére szolgál. A get metódus az adott kulcsnak megfelelő érték megkeresésére szolgál. A put metódus az adott kulccsal való érték tárolására szolgál. Lehetőség van egy elem eltávolítására egy adott kulcsnál az eltávolítási módszerrel. Ezek a térképes felület néhány gyakori módszere. Segít a kulcs alapján elemek keresésében, beszúrásában és törlésében. A TreeMap osztály a NavigableMap-et valósítja meg. A NavigableMap kiterjeszti a SortedMap alkalmazást. A SortedMap kiterjeszti a térképet. Ezért a Map metódusai használhatók a TreeMap-pel. Tekintse meg az alábbi programot.
02. ábra: Programozás a TreeMap használatával
A fenti program szerint létrejön egy TreeMap objektum. A programozó az objektum segítségével elemeket adhat hozzá. A put metódus kulcs-érték párok beszúrására szolgál. A get metódust az adott kulccsal együtt használják az elemek lekéréséhez. A programozó a Map. Entry segítségével kinyomtathatja az összes kulcsot és értéket. A kimenet megfigyelésekor nem tartja meg a beillesztett sorrendet. Az elemeket növekvő sorrendben tárolja.
Mi a hasonlóság a TreeSet és a TreeMap között?
- A TreeSet és a TreeMap is a gyűjteményhierarchiában található.
- Mind a TreeSet, mind a TreeMap fenntartja a növekvő sorrendet.
- Mind a TreeSet, mind a TreeMap számos elemet képes tárolni és kezelni.
Mi a különbség a TreeSet és a TreeMap között?
TreeSet vs TreeMap |
|
A TreeSet egy olyan osztály, amely megvalósítja a Set felületet, és növekvő sorrendben tárolja az elemeket. | A TreeMap egy olyan osztály, amely megvalósítja a Map interfészt, és növekvő sorrendben tárolja a kulcs-érték párokat. |
Megvalósított felület | |
TreeSet megvalósítja a Set interfészt. | TreeMap megvalósítja a térképes felületet. |
Összefoglaló – TreeSet vs TreeMap
Egy tömb elemkészlet tárolására szolgál, de nem segít az elemek dinamikus tárolásában. Az olyan programozási nyelvek, mint a Java, gyűjteményeket tartalmaznak az adatelemek dinamikus tárolására. A gyűjtemény a gyűjteményhierarchia alaposztálya. Osztályokból és interfészekből áll, amelyek olyan műveleteket hajtanak végre, mint például elemek hozzáadása, törlése. A készlet és a térkép a gyűjteményi hierarchia két felülete. A TreeSet egy olyan osztály, amely megvalósítja a Set felületet, és növekvő sorrendben tárolja az elemeket. A TreeMap egy olyan osztály, amely megvalósítja a Map felületet, és növekvő sorrendben tárolja a kulcs-érték párokat. Ez a különbség a TreeSet és a TreeMap között.