Skillnad Mellan Lista Och Uppsättning

Innehållsförteckning:

Skillnad Mellan Lista Och Uppsättning
Skillnad Mellan Lista Och Uppsättning

Video: Skillnad Mellan Lista Och Uppsättning

Video: Skillnad Mellan Lista Och Uppsättning
Video: Rickard förklarar hur du lyckas med snygga golvsockel innerhörn 2024, December
Anonim

Nyckelskillnad - Lista vs Set

De flesta programmeringsspråk använder arrays för att lagra en uppsättning data av samma typ. En stor nackdel med matriser är att när matrisstorleken deklareras kan den inte ändras. Om programmeraren vill lagra värden som överstiger matrisstorleken, ska han skapa en ny matris och kopiera de befintliga elementen till den nya matrisen. I dessa situationer kan samlingar användas. Det är möjligt att lägga till element, ta bort element och många andra operationer med stöd av samlingar. Det finns olika typer av samlingar tillgängliga på programmeringsspråk som Java. List och Set är gränssnitt för samlingshierarkin. Basgränssnittet för andra gränssnitt är Collection. Huvudskillnaden mellan List och Set är att List stöder lagring av samma element flera gånger medan Set inte stöder lagring av samma element flera gånger. Därför,a Set tillåter inte duplicering.

INNEHÅLL

1. Översikt och nyckelskillnad

2. Vad är lista

3. Vad är inställt

4. Likheter mellan lista och uppsättning

5. Jämförelse sida vid sida - Lista mot uppsättning i tabellform

6. Sammanfattning

Vad är Lista?

Listan är ett gränssnitt som utökar samlingsgränssnittet. Det finns ett antal metoder i samlingsgränssnittet. Add-metoden hjälper till att lägga till ett element. 'Ta bort metoden' är att ta bort ett element. Det finns 'addAll-metod' för att lägga till flera element medan 'removeAll method' för att ta bort elementen från samlingen. Metoden innehåller hjälper till att hitta om ett specifikt objekt finns i listan eller inte. 'ContainAll' är att hitta om en uppsättning objekt finns i samlingen. Iteratormetoden används för att slinga igenom objekten i listan. När listan utökar insamlingen tillhör alla insamlingsmetoder listan. Förutom dessa metoder har listan metoder som get and set. Programmeraren kan få ett värde i ett visst index med hjälp av get-metoden. Programmeraren kan ställa in ett värde vid ett visst index med hjälp av inställningsmetoden.'IndexOf' används för att hitta index för ett element.

I en lista kan operationerna utföras enligt positionen. Programmeraren kan tillhandahålla det dataelement som ska läggas till i indexet. Så det kommer att läggas till det specifika indexet. Om programmeraren inte ger ett index kommer elementet att läggas till i slutet av listan. Det bibehåller också den infogade ordningen. Om element 1 läggs till och sedan läggs element2 till kommer element1 att vara före element2.

Skillnad mellan lista och uppsättning
Skillnad mellan lista och uppsättning

Figur 01: Lista och ställ in

ArrayList, LinkedList, Vector är några klasser som implementerar List. I en ArrayList är det snabbt att komma åt ett element men att infoga och ta bort är lägre. ArrayList är inte trådsäker. Åtkomst till samma ArrayList från flera trådar kanske inte ger samma resultat. I en LinkedList är elementen länkade till både bakåt och framåt. Att infoga och ta bort element med hjälp av en LinkedList är snabbare än ArrayList. LinkedList implementerar både lista och kö. Vector liknar ArrayList, men det är slitstarkt eftersom alla metoder är synkroniserade.

Vad är inställt?

Set är ett gränssnitt som utökar Collection-gränssnittet. Eftersom Set-gränssnittet utökar Collection tillhör alla metoder för Collection också Set. En uppsättning stöder inte dubbleringsvärden. Därför kan inte programmeraren lagra samma element två gånger. Den upprätthåller en unik uppsättning element. SortedSet-gränssnittet utökar Set-gränssnittet. SortedSet håller elementen i sorterad ordning. NavigableSet-gränssnittet utökar SortedSet. NavigableSet erbjuder navigationsmetoder som nedre, golv, tak etc.

HashSet, LinkedHashSet och TreeSet är några klasser som implementerar Set-gränssnittet. HashSet implementerar Set-gränssnittet. Det bibehåller inte den infogade ordningen. Om värdena infogas som a, x, b kan det lagras som, x, a, b. LinkedSet behåller den infogade ordningen. Om elementen infogas i a, x, b-ordning kommer lagringsordningen att vara a, x, b. TreeSet implementerar Set och NavigableSet. Det bibehåller inte infogningsordningen utan lagrar elementen i den sorterade ordningen. Om den infogade ordningen är a, c, b, kommer elementen att lagras som a, b, c. Alla HashSet, LinkedHashSet och TreeSet har inga dubbletter.

Vad är likheterna mellan lista och uppsättning?

  • Både List- och Set-gränssnitt utökar Collection-gränssnittet.
  • Både List- och Set-supportåtgärder som att lägga till, ta bort element.

Vad är skillnaden mellan lista och uppsättning?

Lista vs Set

Listgränssnitt är delgränssnittet i Collection som innehåller metoder för att utföra operationer som infoga, radera baserat på indexet. Set Interface är ett delgränssnitt för Collection som innehåller metoder för att utföra operationer som att infoga, ta bort element samtidigt som de unika elementen bibehålls.
Klasser
ArrayList, Vector och LinkedList är klasser som implementerar List-gränssnitt. HashSet, LinkedHashSet och TreeSet är klasser som implementerar Set-gränssnittet.
Element duplicering
Lista stöder duplicering av element. Set stöder inte duplicering av element. Element är unika.

Sammanfattning - Lista vs Set

Samlingar används för att lagra element dynamiskt. Programmeringsspråk som Java tillhandahåller samlingsgränssnitt. List och Set är två gränssnitt som hör till samlingsgränssnittet. Båda gränssnitten utökar samlingen. Den här artikeln diskuterade skillnaden mellan List och Set. Huvudskillnaden mellan List och Set är att List stöder lagring av samma element flera gånger medan Set inte stöder lagring av samma element flera gånger. Set håller alltid unika element.

Rekommenderas: