Különbség A TreeSet és A HashSet Között

Tartalomjegyzék:

Különbség A TreeSet és A HashSet Között
Különbség A TreeSet és A HashSet Között

Videó: Különbség A TreeSet és A HashSet Között

Videó: Különbség A TreeSet és A HashSet Között
Videó: HashSet и TreeSet - Collections #1 - Advanced Java 2024, Lehet
Anonim

Fő különbség - TreeSet vs HashSet

A legtöbb programozási nyelv támogatja a tömböket. Ez egy adatstruktúra, amelyet ugyanazon adattípus több elemének tárolására használnak. Ha hat elemre van tömb deklarálva, akkor nem használható tíz elem tárolására. Ezért a tömbök nem dinamikusak és nem változtathatják meg a tömb méretét, miután deklarálták. A programozási nyelvek, például a Java, támogatják az adatok dinamikus tárolására használt gyűjteményeket. A gyűjtemények olyan műveleteket támogatnak, mint az elemek hozzáadása és az elemek törlése. A gyűjtemény hierarchiájában számos interfész és osztály található. Az alapfelület a Gyűjtemény felület. A Set egy interfész, amely kiterjeszti a Collection felületet. Nem teszi lehetővé a duplikációt. A TreeSet és a HashSet két osztály a Gyűjtemény hierarchiában, és mindkettő megvalósítja a Set felületet. A TreeSet a Set felületet megvalósító osztály, amelyet egyedi elemek növekvő sorrendben történő tárolására használnak. A HashSet egy olyan osztály, amely megvalósítja a Set felületet, és egyedi elemek tárolására szolgál a Hashing mechanizmus segítségével. A legfontosabb különbség a TreeSet és a HashSet között az, hogy a TreeSet az elemeket növekvő sorrendben tárolja, míg a HashSet az elemeket nem növekvő sorrendben tárolja. A TreeSet és a HashSet is csak egyedi elemeket tárol.

TARTALOM

1. Áttekintés és kulcsfontosságú különbségek

2. Mi a TreeSet

3. Mi az a HashSet

4. A TreeSet és a HashSet közötti hasonlóság

5. Egymás melletti összehasonlítás - TreeSet vs HashSet táblázatos formában

6. Összefoglalás

Mi az a TreeSet?

A TreeSet osztály megvalósítja a NavigableSet felületet. A NavigableSet interfész kiterjeszti a SortedSet, a Set, a Collection és az Iterable interfészeket hierarchikus sorrendben. A TreeSet mindig fenntartja a növekvő sorrendet. Ha az elemeket B, A, C sorrendben illesztette be, akkor A, B, C formátumban tárolódnak. Az olyan módszerek, mint az add (), remove (), használhatók a TreeSet objektummal. Az add metódus használható egy elem hozzáadására. Az eltávolítási módszer egy elem eltávolítására szolgál a gyűjteményből. Ezek a módszerek használhatók a TreeSet-tel.

Különbség a TreeSet és a HashSet között
Különbség a TreeSet és a HashSet között

01. ábra: Programozás a TreeSet programmal

A fenti program szerint létrejön egy TreeSet típusú objektum. A karakterlánc-adatelemeket hozzáadjuk az objektumhoz az add metódussal. A beillesztett adatok sorrendje A, D, A, B, C, D. Az iterátor segítségével a tárolt értékeket kinyomtatja a képernyőre. A kimenet A, B, C, D. Annak ellenére, hogy van két A betű és két D betű, a kimenet egy-egy A-t és egy D-t jelenít meg. Ezért a TreeSet egyedi elemeket tárol. Nincs különösebb beszúrási sorrend, de a kimenet megfigyelésekor látható, hogy a TreeSet fenntartja az elemek növekvő sorrendjét.

Mi az a HashSet?

A HashSet osztály kiterjeszti az AbstractSet osztályt, amely megvalósítja a Set Interface-t. A Set felület hierarchikus sorrendben örökli a Gyűjtemény és az Iterable interfészeket. A HashSet-ben nincs garancia arra, hogy az elemek fenntartják a növekvő és a beillesztett sorrendet. Ha a beillesztett sorrend A, B, C volt, akkor az értékek C, A, B néven tárolhatók. A tárolási sorrend is lehet A, B, C, de nincs garancia arra, hogy a beillesztett vagy növekvő sorrend megmarad.

Fő különbség a TreeSet és a HashSet között
Fő különbség a TreeSet és a HashSet között

02. ábra: Program a HashSettel

A fenti program szerint létrejön egy HashSet típusú objektum. A karakterlánc-adatelemeket hozzáadjuk az objektumhoz az add metódussal. A beillesztett adatok sorrendje L, R, M, M, R, L. Az iterátor segítségével a tárolt értékeket a képernyőre nyomtatja. A kimenet RL M. Annak ellenére, hogy mindegyikből két L, R és M betű van, mindegyikből csak egy betű jelenik meg. Ezért a HashSet egyedi elemeket tárol. A kimenet megfigyelésekor látható, hogy nincs növekvő sorrend, vagy a beillesztett sorrend fennmarad.

Milyen hasonlóságok vannak a TreeSet és a HashSet között?

  • A TreeSet és a HashSet egyaránt osztályok a gyűjtemény hierarchiájához tartoznak.
  • A TreeSet és a HashSet is csak egyedi elemeket tárol.
  • A TreeSet és a HashSet egyaránt felhasználható számos elem tárolására és kezelésére.
  • A TreeSet és a HashSet sem tartja fenn a beillesztett sorrendet.

Mi a különbség a TreeSet és a HashSet között?

Különböző cikk a táblázat előtt

TreeSet vs HashSet

A TreeSet egy osztály a gyűjtemény hierarchiájában, amelyet egyedi elemek növekvő sorrendben történő tárolására használnak. A HashSet a gyűjtemény hierarchiájának olyan osztálya, amelyet egyedi elemek tárolására használnak a Hashing mechanizmus segítségével.
Elemtárolás
A TreeSet az elemeket növekvő sorrendben tárolja. A HashSet nem tárolja az elemeket növekvő sorrendben.

Összegzés - TreeSet vs HashSet

A programozás során dinamikusan kell tárolni az adatelemeket. A programozási nyelvek, például a Java, támogatják a Gyűjteményeket ennek a feladatnak a megvalósításához. A gyűjtemény hierarchiájában számos interfész és osztály található. A TreeSet és a HashSet két osztály a Gyűjtemény hierarchiában. Mindkét megvalósítja a Set felületet. A TreeSet a Set felületet megvalósító osztály, amelyet egyedi elemek növekvő sorrendben tárolnak. A HashSet egy olyan osztály, amely megvalósítja a Set felületet, és egyedi elemek tárolására szolgál a Hashing mechanizmus segítségével. A TreeSet és a HashSet közötti különbség az, hogy a TreeSet az elemeket növekvő sorrendben tárolja, míg a HashSet az elemeket nem növekvő sorrendben tárolja. Ez a cikk a TreeSet és a HashSet közötti különbséget tárgyalta.

Ajánlott: