Különbség A Lista és A Készlet Között

Tartalomjegyzék:

Különbség A Lista és A Készlet Között
Különbség A Lista és A Készlet Között
Anonim

Kulcskülönbség - Lista vs Beállított

A legtöbb programozási nyelv tömböket használ egy azonos típusú adatkészlet tárolására. A tömbök egyik fő hátránya, hogy a tömb méretének deklarálása után nem lehet módosítani. Ha a programozó a tömbméretet meghaladó értékeket akar tárolni, akkor létre kell hoznia egy új tömböt, és át kell másolnia a meglévő elemeket az új tömbbe. Ezekben a helyzetekben gyűjtemények használhatók. Lehetőség van elemek hozzáadására, elemek törlésére és sok más műveletre a gyűjtemények támogatásával. Különféle típusú gyűjtemények állnak rendelkezésre a programozási nyelvekben, például a Java-ban. A List és a Set a gyűjtemények hierarchiájának interfészei. A többi interfész alapfelülete a Collection. A legfontosabb különbség a List és a Set között az, hogy a List támogatja ugyanazon elem többszörös tárolását, míg a Set nem támogatja ugyanazon elem többszörös tárolását. Ezért,a készlet nem engedélyezi a másolást.

TARTALOM

1. Áttekintés és kulcsfontosságú különbségek

2. Mi a lista

3. Mi van beállítva

4. A lista és a készlet közötti hasonlóság

5. Egymás melletti összehasonlítás - Lista vs táblázatos formában

6. Összefoglalás

Mi a lista?

A lista egy felület, amely kiterjeszti a Gyűjtemény felületet. A Gyűjtemény felületen számos módszer létezik. Az add metódus segít egy elem hozzáadásában. Az „eltávolítási módszer” egy elem eltávolítása. Van egy "addAll metódus" több elem hozzáadásához, míg az "removeAll method" az elemek eltávolításához a gyűjteményből. A tartalmaz metódus segít megtalálni, hogy egy adott objektum szerepel-e a listában, vagy sem. A 'tartalmazzaAll' azt keresi, hogy van-e objektumkészlet a gyűjteményben. Az iterátor metódus a lista elemei közötti áttekintésre szolgál. Amint a lista kiterjeszti a gyűjteményt, a gyűjtés minden módszere a listához tartozik. Ezen módszereken kívül a Lista rendelkezik olyan módszerekkel, mint a get és set. A programozó a get metódussal kaphat értéket egy adott indexnél. A programozó a beállított módszer segítségével beállíthat egy értéket egy adott indexhez. Az 'indexOf' egy elem indexének megkeresésére szolgál.

A Listában a műveletek a pozíciónak megfelelően végezhetők el. A programozó megadhatja az indexhez hozzáadandó adatelemet. Tehát hozzáadódik az adott indexhez. Ha a programozó nem ad indexet, az elem hozzáadódik a Lista végéhez. Fenntartja a beillesztett sorrendet is. Ha hozzáadódik az 1. elem, majd hozzáadódik a 2. elem, akkor az 1. elem az 2. elem elé kerül.

Különbség a lista és a készlet között
Különbség a lista és a készlet között

01. ábra: Lista és készlet

Az ArrayList, a LinkedList, a Vector néhány olyan osztály, amely megvalósítja a List-et. Az ArrayList-ben az elemhez való hozzáférés gyors, de a beillesztés és a törlés alacsonyabb. Az ArrayList nem szálbiztos. Előfordulhat, hogy ugyanazon ArrayList több szálból történő elérése nem ugyanazt az eredményt adja. A LinkedList-ben az elemek mind hátra, mind előre vannak kapcsolva. Az elemek beszúrása és törlése a LinkedList használatával gyorsabb, mint az ArrayList. A LinkedList megvalósítja mind a Listát, mind a várólistát. A vektor hasonló az ArrayList-hez, de biztonságos a futófelületen, mert az összes módszer szinkronizált.

Mi a Set?

A Set egy interfész, amely kiterjeszti a Collection felületet. Amint a Set felület kiterjeszti a Gyűjteményt, a Gyűjtés minden módszere szintén a Sethez tartozik. A készlet nem támogatja a duplikációs értékeket. Ezért a programozó nem tárolhatja ugyanazt az elemet kétszer. Egyedülálló elemkészletet tart fenn. A SortedSet interfész kiterjeszti a Set interfészt. A SortedSet rendezi az elemeket. A NavigableSet felület kiterjeszti a SortedSet alkalmazást. A NavigableSet olyan navigációs módszereket kínál, mint az alsó, a padló, a mennyezet stb.

A HashSet, a LinkedHashSet és a TreeSet olyan osztályok, amelyek megvalósítják a Set felületet. A HashSet megvalósítja a Set felületet. Nem tartja fenn a beillesztett sorrendet. Ha az értékeket a, x, b formában szúrja be, akkor x, a, b formátumban tárolhatja. A LinkedSet fenntartja a beillesztett sorrendet. Ha az elemek a, x, b sorrendben kerülnek beillesztésre, akkor a tárolási sorrend a, x, b lesz. A TreeSet végrehajtja a Set és a NavigableSet elemeket. Nem tartja fenn a beszúrás sorrendjét, hanem az elemeket rendezett sorrendben tárolja. Ha a beillesztett sorrend a, c, b, akkor az elemeket a, b, c formátumban tároljuk. Az összes HashSet, LinkedHashSet és TreeSet nem tartalmaz duplikált elemeket.

Milyen hasonlóságok vannak a lista és a készlet között?

  • A List és a Set interfészek egyaránt kiterjesztik a Collection felületet.
  • A List és a Set támogatási műveletek, például elemek hozzáadása, eltávolítása.

Mi a különbség a lista és a készlet között?

Lista vs készlet

A List Interface a Gyűjtemény alfelülete, amely az index alapján olyan műveletek végrehajtására alkalmas módszereket tartalmaz, mint például a beszúrás, a törlés. A Set Interface a Gyűjtemény alfelülete, amely olyan műveletek végrehajtására alkalmas módszereket tartalmaz, mint az elemek beszúrása, törlése, az egyedi elemek fenntartása mellett.
Osztályok
Az ArrayList, a Vector és a LinkedList olyan osztályok, amelyek megvalósítják a List felületet. A HashSet, a LinkedHashSet és a TreeSet olyan osztályok, amelyek a Set felületet valósítják meg.
Elem másolása
A lista támogatja az elemek duplikációját. A készlet nem támogatja az elemek megkettőzését. Az elemek egyediek.

Összegzés - Lista vs

A gyűjteményeket az elemek dinamikus tárolására használják. A programozási nyelvek, például a Java, biztosítják a Gyűjtemény felületet. A List és a Set két felület, amelyek a Collection felülethez tartoznak. Mindkét felület kiterjeszti a Gyűjteményt. Ez a cikk a List és a Set közötti különbséget tárgyalta. A legfontosabb különbség a List és a Set között az, hogy a List támogatja ugyanazon elem többszörös tárolását, míg a Set nem támogatja ugyanazon elem többszörös tárolását. A Set mindig egyedi elemeket tart fenn.

Ajánlott: