Razlika između popisa i skupa u Javi

Autor: Laura McKinney
Datum Stvaranja: 2 Travanj 2021
Datum Ažuriranja: 11 Svibanj 2024
Anonim
High Density 2022
Video: High Density 2022

Sadržaj


Sučelje popisa i postavljanja proširuje Zbirku. Oboje održava kolekciju elemenata ili predmeta. No, glavna razlika koja ih razlikuje jedni od drugih je Popis je skup uređenih elemenata, elementi se dodaju ili uklanjaju ili im se pristupa uz pomoć varijable indeksa. S druge strane, Set je kolekcija objekata gdje zbirka ne dopušta dvostruke elemente u njoj. Proučimo još nekoliko razlika između Popisa i Postavi sučelja uz pomoć usporednog grafikona prikazanog dolje.

  1. Usporedni grafikon
  2. definicija
  3. Ključne razlike
  4. Zaključak

Usporedni grafikon

Osnove za usporedbuPopis set
Osnovni, temeljniList održava slijed elemenata pohranjenih u popisu.Set ne održava posebno redoslijed umetanja, ali, Linked HashSet održava redoslijed umetanja.
kopiranjePopis može imati dvostruke elemente u sebi.Metoda add () vraća pogrešno ako pokušate umetnuti duplicirane elemente.
metodePored metoda definiranih u Zbirci, popis definira neke vlastite metode.Set ne definira nikakvu dodatnu metodu.
izvršenje Popis implementiraju ArrayList, LinkedList, CopyOnWriteArrayList, Vector, Stack.Skup implementiraju HashSet, LinkedHashSet, EnumSet, TreeSet, CopyOnWriteArraySet.


Definicija popisa

Popis sučelja proširuje sučelje kolekcije. Popis je naručena zbirka elemenata ili predmeta. Za razliku od Postavi, Popis može sadržavati dvostruke elemente. Pored metoda definiranih u Popisu zbirki definira neke vlastite metode poput metode get () i set () temeljene na indeksu. Metode dodavanja () i uklanjanja () naslijeđene iz Zbirke koja dodaje ili uklanja navedeni element iz indeksa navedenog u argumentu metode. Popis je vrsta matrice čija veličina raste kako dodajemo elemente na popis.

Popis ne definira nijednu metodu za rad s rasponom indeksa na popisu. Definira metodu popisa () koja vraća podlista s izvornog popisa određenog raspona. Promjene koje podnesete na popisu također se pojavljuju na izvornom popisu. Popis sučelja implementiraju ArrayList, LinkedList, CopyOnWriteArrayList, Vector, Stack.

Definicija skupa

Sučelje postava proširuje sučelje Collection. Sučelje skupa je zbirka ili skupina objekata koja u njoj nema dvostruki objekt. To znači da se dvije reference ne mogu odnositi na jedan objekt, ili jedna referenca ne može se odnositi na dva objekta, ili ne mogu biti dvije reference koje se odnose na Null. Redoslijed ili redoslijed elementa nije važan Set, ali nije da zabranjuje naređeni skup.


Sučelje skupa ne definira nijednu metodu osim metode definirane u Zbirci. Umjesto toga, ona ograničava metode add () i addall () za prikupljanje kako bi dodali bilo koji duplicirani objekt u kolekciju. Ako pokušate dodati bilo koji duplikat objekta u zbirku koristeći metodu dodavanja (), on vraća laž. Inače se vraća istina. Postavljanje sučelja implementiraju HashSet, LinkedHashSet, EnumSet, TreeSet, CopyOnWriteArraySet.

  1. Slijed elemenata / objekta u kolekciji održava se u Listu dok, Set ne održava redoslijed elemenata, ali postoji iznimka LinkedHashSet održava redoslijed umetanja.
  2. Popis može imati dvostruke elemente jer identificira bilo koji element sa svojim indeksom, ali, Set ne dopušta duplikat elemenata jer nema bilo koji element indeksa koji bi mogao identificirati bilo koji objekt u kolekciji.
  3. Popis definira neke metode samostalno, pored metoda definiranih u Zbirci. S druge strane, Set ne definira nijednu vlastitu metodu, već ograničava metode prikupljanja da bi se dodali duplicirani elementi.
  4. Popis implementira ArrayList, LinkedList, CopyOnWriteArrayList, Vector, Stack sučelja. S druge strane, Set implementiraju HashSet, LinkedHashSet, EnumSet, TreeSet, CopyOnWriteArraySet sučelja.

Zaključak:

Upotreba sučelja popisa i skupa ovisi o zahtjevu. Ako je važan redoslijed objekata / elemenata, tada morate koristiti sučelje popisa. Ako u vašoj kolekciji nisu potrebni duplicirani elementi, tada morate koristiti Set sučelje