Razlika Između TreeSet I HashSet

Sadržaj:

Razlika Između TreeSet I HashSet
Razlika Između TreeSet I HashSet

Video: Razlika Između TreeSet I HashSet

Video: Razlika Između TreeSet I HashSet
Video: HashSet и TreeSet - Collections #1 - Advanced Java 2024, Prosinac
Anonim

Ključna razlika - TreeSet vs HashSet

Većina programskih jezika podržava nizove. To je struktura podataka koja se koristi za pohranu više elemenata istog tipa podataka. Ako postoji niz deklariran za šest elemenata, tada se ne može koristiti za pohranu deset elemenata. Stoga nizovi nisu dinamični i ne mogu mijenjati veličinu niza nakon što je deklariran. Programski jezici kao što je Java podržavaju zbirke koje se koriste za dinamičko spremanje podataka. Zbirke podržavaju operacije poput dodavanja elemenata i brisanja elemenata. Postoji niz sučelja i klasa u hijerarhiji kolekcije. Osnovno sučelje je sučelje Collection. Set je sučelje koje proširuje sučelje zbirke. Ne dopušta dupliciranje. TreeSet i HashSet su dvije klase u hijerarhiji zbirke i obje implementiraju sučelje Set. TreeSet je klasa koja implementira sučelje Set i koristi se za pohranu jedinstvenih elemenata u rastućem redoslijedu. HashSet je klasa koja implementira Set sučelje i koristi se za pohranu jedinstvenih elemenata pomoću mehanizma Hashing. Ključna razlika između TreeSet i HashSet je u tome što TreeSet pohranjuje elemente u rastućem redoslijedu, dok HashSet ne pohranjuje elemente u rastućem redoslijedu. I TreeSet i HashSet pohranjuju samo jedinstvene elemente.

SADRŽAJ

1. Pregled i ključna razlika

2. Što je TreeSet

3. Što je HashSet

4. Sličnosti između TreeSet i HashSet

5. Usporedna usporedba - TreeSet i HashSet u tabličnom obliku

6. Sažetak

Što je TreeSet?

Klasa TreeSet implementira sučelje NavigableSet. Sučelje NavigableSet proširuje sučelja SortedSet, Set, Collection i Iterable u hijerarhijskom redoslijedu. TreeSet uvijek održava uzlazni poredak. Ako su elementi umetnuti redoslijedom B, A, C, pohranit će se kao A, B, C. Metode poput add (), remove () mogu se koristiti s TreeSet objektom. Metoda dodavanja može se koristiti za dodavanje elementa. Metoda uklanjanja koristi se za uklanjanje elementa iz zbirke. To su neke metode koje se mogu koristiti s TreeSetom.

Razlika između TreeSet i HashSet
Razlika između TreeSet i HashSet

Slika 01: Program pomoću TreeSet-a

Prema gornjem programu kreira se objekt tipa TreeSet. Elementi podataka niza dodaju se u taj objekt pomoću metode add. Redoslijed unosa podataka je A, D, A, B, C, D. Pomoću iteratora pohranjene vrijednosti ispisuju se na zaslon. Izlaz je A, B, C, D. Iako postoje dva slova A i dva slova D, izlaz prikazuje jedno A i jedno D. Stoga TreeSet pohranjuje jedinstvene elemente. Ne postoji poseban redoslijed umetanja, ali kada se promatra izlaz, može se vidjeti da TreeSet održava rastući poredak elemenata.

Što je HashSet?

Klasa HashSet proširuje klasu AbstractSet koja implementira Set Interface. Sučelje Set nasljeđuje sučelja Collection i Iterable u hijerarhijskom redoslijedu. U HashSetu ne postoji jamstvo da će elementi zadržati uzlazni poredak i umetnuti redoslijed. Ako je umetnuti redoslijed bio A, B, C, vrijednosti bi se mogle pohraniti kao C, A, B. Poredak za pohranu može biti i A, B, C, ali ne postoji jamstvo da se umetnuti redoslijed ili uzlazni poredak održavaju.

Ključna razlika između TreeSet i HashSet
Ključna razlika između TreeSet i HashSet

Slika 02: Program s HashSetom

Prema gornjem programu kreira se objekt tipa HashSet. Elementi podataka niza dodaju se u taj objekt pomoću metode add. Redoslijed unosa podataka je L, R, M, M, R, L. Pomoću iteratora pohranjene vrijednosti ispisuju se na zaslon. Izlaz je RL M. Iako postoje dva slova L, R i M od svakog, prikazuje se samo jedno slovo od svakog. Stoga HashSet pohranjuje jedinstvene elemente. Promatrajući izlaz, može se vidjeti da ne postoji uzlazni poredak ili se umetnuti redoslijed održava.

Koje su sličnosti između TreeSet i HashSet?

  • Klase TreeSet i HashSet pripadaju hijerarhiji kolekcije.
  • I TreeSet i HashSet pohranjuju samo jedinstvene elemente.
  • I TreeSet i HashSet mogu se koristiti za pohranu i upravljanje mnogim elementima.
  • I TreeSet i HashSet ne održavaju umetnuti redoslijed.

Koja je razlika između TreeSet i HashSet?

Diff Article Sredina prije tablice

TreeSet vs HashSet

TreeSet je klasa u hijerarhiji kolekcije koja se koristi za pohranu jedinstvenih elemenata u rastućem redoslijedu. HashSet je klasa u hijerarhiji kolekcije koja se koristi za spremanje jedinstvenih elemenata pomoću mehanizma raspršivanja.
Pohranjivanje elemenata
TreeSet pohranjuje elemente u rastućem redoslijedu. HashSet ne pohranjuje elemente u rastućem redoslijedu.

Sažetak - TreeSet vs HashSet

U programiranju je potrebno dinamički pohranjivati elemente podataka. Programski jezici kao što je Java podržavaju Zbirke za postizanje ovog zadatka. Postoji niz sučelja i klasa u hijerarhiji kolekcije. TreeSet i HashSet dvije su klase u hijerarhiji Zbirke. Obje implementiraju sučelje Set. TreeSet je klasa koja implementira sučelje Set i koristi se za pohranu jedinstvenih elemenata u rastućem redoslijedu. HashSet je klasa koja implementira Set sučelje i koristi se za pohranu jedinstvenih elemenata pomoću mehanizma Hashing. Razlika između TreeSet i HashSet je u tome što TreeSet pohranjuje elemente u rastućem redoslijedu, dok HashSet ne pohranjuje elemente u rastućem redoslijedu. Ovaj je članak raspravljao o razlici između TreeSet i HashSet.

Preporučeno: