Diferența dintre listă și set

Diferența cheie - Lista vs A stabilit
 

Cele mai multe limbi de programare folosesc matrice pentru a stoca un set de date de același tip. Un dezavantaj major al matricelor este că, odată ce dimensiunea matricei este declarată, nu se poate modifica. Dacă programatorul dorește să stocheze valori care depășesc dimensiunea matricei, atunci ar trebui să creeze o nouă matrice și să copieze elementele existente în noul matrice. În aceste situații pot fi utilizate colecții. Este posibil să adăugați elemente, să ștergeți elemente și multe alte operații cu ajutorul colecțiilor. Există diferite tipuri de colecții disponibile în limbile de programare, cum ar fi Java. List și Set sunt interfețe ale ierarhiei colecțiilor. Interfața de bază pentru alte interfețe este Collection. diferența cheie între listă și set este asta Lista acceptă stocarea aceluiași element de mai multe ori în timp ce setul nu acceptă stocarea aceluiași element de mai multe ori. Prin urmare, un set nu permite duplicarea.

CUPRINS

1. Prezentare generală și diferență cheie
2. Ce este Lista
3. Ce este setat
4. Asemănări între listă și set
5. Comparație comparativă - listă vs setată în formă tabulară
6. rezumat

Ce este Lista?

Lista este o interfață care extinde interfața Collection. Există o serie de metode în interfața Colecție. Metoda de adăugare vă ajută să adăugați un element. Metoda "eliminați" este de a elimina un element. Există metoda "addAll" pentru a adăuga mai multe elemente în timp ce "removeAll method" pentru a elimina elementele din colecție. Metoda constă în a afla dacă un anumit obiect este prezent în Listă sau nu. Conținutul "containsAll" constă în găsirea unui set de obiecte în colecție. Metoda iterator este folosită pentru a trece prin elementele din listă. În ceea ce privește lista extinde colecția, toate metodele de colecție aparțin listei. În afară de aceste metode, lista conține metode cum ar fi obținerea și setarea. Programatorul poate obține o valoare la un anumit indice folosind metoda get. Programatorul poate seta o valoare la un indice specific utilizând metoda setată. "IndexOf" este folosit pentru a găsi indicele unui element.

Într-o listă, operațiunile pot fi efectuate în funcție de poziție. Programatorul poate furniza elementul de date care urmează să fie adăugat la index. Deci, acesta va fi adăugat la indexul specific. Dacă programatorul nu dă un index, elementul va fi adăugat la sfârșitul listei. De asemenea, menține ordinea introdusă. Dacă elementul 1 este adăugat și apoi elementul2 este adăugat, atunci element1 va fi în fața elementului2.

Figura 01: Listă și setare

ArrayList, LinkedList, Vector sunt câteva clase care implementează Lista. Într-un ArrayList, accesarea unui element este rapidă, dar inserarea și ștergerea este mai mică. ArrayList nu este sigură în legătură cu firul. Accesarea aceluiași ArrayList din mai multe fire poate să nu ducă același rezultat. Într-un LinkedList, elementele sunt legate atât înapoi cât și înapoi. Introducerea și ștergerea elementelor utilizând un LinkedList este mai rapidă decât ArrayList. LinkedList implementează lista și coada ambele. Vectorul este similar cu ArrayList, dar este sigur pentru căi de rulare, deoarece toate metodele sunt sincronizate.

Ce este setat?

Set este o interfață care extinde interfața Collection. Întrucât interfața Set expands Colecția, toate metodele de Colectare aparțin și Set. Un set nu acceptă valori de duplicare. De aceea, programatorul nu poate stoca același element de două ori. Menține un set unic de elemente. Interfața SortedSet extinde interfața Set. SortedSet păstrează elementele în ordine sortată. Interfața NavigableSet extinde SortedSet. NavigableSet oferă metode de navigare, cum ar fi inferior, podea, plafon etc.

HashSet, LinkedHashSet și TreeSet sunt câteva clase care implementează interfața Set. HashSet implementează interfața Set. Nu menține ordinea inserată. Dacă valorile sunt introduse ca a, x, b se pot stoca ca, x, a, b. LinkedSet menține ordinea introdusă. Dacă elementele sunt inserate în ordine a, x, b, ordinea de stocare va fi a, x, b. TreeSet implementează Set și NavigableSet. Nu menține ordinea inserării, dar stochează elementele în ordinea sortată. Dacă ordinea inserată este a, c, b, atunci elementele vor fi stocate ca a, b, c. Toate aplicațiile HashSet, LinkedHashSet și TreeSet nu vor avea elemente duplicate.

Care sunt asemănările dintre listă și set?

  • Ambele interfețe List și Set extind interfața Collection.
  • Atât listei, cât și setarea operațiunilor de asistență, cum ar fi adăugarea, eliminarea elementelor.

Care este diferența dintre listă și set?

List vs Set

List Interface este sub-interfața colecției, care conține metode pentru a efectua operații precum inserarea, ștergerea pe baza indexului. Set Interface este o interfață sub-colecție a Colecției, care conține metode pentru a efectua operații cum ar fi inserarea, ștergerea elementelor în timp ce menținerea elementelor unice.
 Clase
ArrayList, Vector și LinkedList sunt clase care implementează interfața List. HashSet, LinkedHashSet și TreeSet sunt clase care implementează interfața Set.
Element de duplicare
Lista suporta duplicarea elementelor. Setul nu acceptă duplicarea elementelor. Elementele sunt unice.

rezumat - Lista vs A stabilit

Colecțiile sunt folosite pentru a stoca dinamic elemente. Limbile de programare, cum ar fi Java, oferă interfața Collection. List și Set sunt două interfețe care aparțin interfeței Colecție. Ambele interfețe extind Colecția. Acest articol a discutat diferența dintre listă și set. Diferența cheie dintre listă și set este că lista acceptă stocarea aceluiași element de mai multe ori în timp ce setul nu acceptă stocarea aceluiași element de mai multe ori. Setul menține întotdeauna elemente unice.

Referinţă:

1. Puncte, Tutoriale. "Colecții Java"., Tutoriale punct, 8 ianuarie 2018. Disponibil aici