Skillnaden mellan lista och inställning i Java

Författare: Laura McKinney
Skapelsedatum: 2 April 2021
Uppdatera Datum: 16 Maj 2024
Anonim
Skillnaden mellan lista och inställning i Java - Teknologi
Skillnaden mellan lista och inställning i Java - Teknologi

Innehåll


Lista och Ställ in gränssnittet utvidgar samlingen. Båda bibehåller samlingen av element eller objekt. Men den största skillnaden som skiljer dem från varandra är Lista är en samling beställda element, elementen läggs till eller tas bort eller nås med hjälp av en indexvariabel. Å andra sidan är Set en samling objekt där samlingen inte tillåter duplicerade element i den. Låt oss studera några fler skillnader mellan lista och Set-gränssnitt med hjälp av jämförelsediagram som visas nedan.

  1. Jämförelsediagram
  2. Definition
  3. Viktiga skillnader
  4. Slutsats

Jämförelsediagram

Grund för jämförelseLista Uppsättning
GrundläggandeLista upprätthåller sekvensen för de element som är lagrade i en lista.Set upprätthåller inte särskilt införingsordning, men Linked HashSet upprätthåller införingsordningen.
DupliceringListan kan ha duplicerade element i den.Metoden add () returnerar falskt om du försöker infoga duplikatelementen.
metoderFörutom metoder definierade i Collection definierar List några av sina egna metoder.Set definierar ingen ytterligare metod.
Genomförande Listan implementeras av ArrayList, LinkedList, CopyOnWriteArrayList, Vector, Stack.Uppsättningen implementeras av HashSet, LinkedHashSet, EnumSet, TreeSet, CopyOnWriteArraySet.


Definition av lista

Listgränssnittet utökar Collection-gränssnittet. En lista är en ordnad samling av element eller objekt. Till skillnad från Set kan Lista innehålla duplicerade element. Förutom de metoder som definieras i Samlingslista definierar vissa metoder för sin egen liknande indexbaserade get () och set () -metod. Metoderna lägg till () och ta bort () som ärvts från Collection som lägger till eller tar bort det angivna elementet från indexet som anges i metodargumentet. Lista är en typ av matris vars storlek växer när vi lägger till element i listan.

Lista definierar inte någon metod för att arbeta med intervallindex i en lista. Den definierar en metod under sublist () som returnerar en underlista från den ursprungliga listan med ett specificerat intervall. Ändringarna som du gör till underlistan visas också i originallistan. Listgränssnittet implementeras av ArrayList, LinkedList, CopyOnWriteArrayList, Vector, Stack.


Definition av Set

Set-gränssnittet utvidgar Collection-gränssnittet. Set interface är en samling eller en grupp av objekt som inte innehåller något duplicerat objekt i det. Det betyder att två referenser inte kan hänvisa till ett objekt, eller att en referens inte kan hänvisa till två objekt, eller att det inte kan två referenser som hänvisar till Null. Elementets ordning eller sekvens är inte viktig Set, men det är inte så att det förbjuder den beställda uppsättningen.

Set-gränssnittet definierar ingen metod utöver den metod som definieras i Collection. Istället begränsar det metoderna för add () och addall () för att samla in alla duplicerade objekt i en samling. Om du försöker lägga till alla duplicerade objekt i en samling med add () -metoden för Collection returnerar det falskt. Annars kommer det tillbaka. Set-gränssnittet implementeras av HashSet, LinkedHashSet, EnumSet, TreeSet, CopyOnWriteArraySet.

  1. Sekvensen med element / objekt i en samling bibehålls i Lista medan Set inte upprätthåller ordningen för elementen men det finns ett undantag som LinkedHashSet upprätthåller införingsordningen.
  2. Listan kan ha duplikatelement eftersom den identifierar alla element med dess index, men Set tillåter inte duplikatelement eftersom den inte har något indexslag av element för att identifiera något objekt i en samling.
  3. Lista definierar vissa metoder på egen hand, utöver de metoder som definieras i Collection. Å andra sidan definierar Set inte någon egen metod, men det begränsar insamlingsmetoderna för att lägga till alla duplicerade element.
  4. Listan implementeras av ArrayList, LinkedList, CopyOnWriteArrayList, Vector, Stack-gränssnitt. Å andra sidan implementeras Set av HashSet, LinkedHashSet, EnumSet, TreeSet, CopyOnWriteArraySet-gränssnitt.

Slutsats:

Användningen av gränssnittet List och Set beror på kravet. Om ordningen på objekt / element är viktig måste du använda listgränssnittet. Om du inte behöver några duplicerade element i din samling, måste du använda Set-gränssnittet