Gyűjtemények (gyűjtemények) a java

Ebben a cikkben fogunk összpontosítani talán a leggyakrabban használt gyűjtemények List, azaz például osztályok AbstractList, ArrayList, láncolt lista.

List - rendezett gyűjteményéből néha a listából, vagy sorozatot. A lista tartalmazhat ismétlődő elemeket. A fejlesztő abszolút felett, ahol minden elem be van dugva a listán. A felhasználó hozzáférhet elemeit az index listán. Amellett, hogy a szabványos interfészen Collection Műveleti lista tartalmazza a következőket:

Access álláspontja - manipulálja elemek pozíciójuk alapján az index listán.

Annak ellenére, hogy a List interfész metódusokat tartalmaz, amellyel egy elem a helyzet (index), hogy erre nem ajánlott. Bizonyos megvalósításokban, a listán (például, láncolt lista), ezeket a műveleteket végezhetjük idő arányos az index értékét.

Keresés - található a megadott elemet, és visszaadja a pozícióját a listán. Erre a célra két módszer: indexOf () és lastIndexOf ().

Különleges iterator ListIterator - tartalmaz egy javított ListIterator iterator feldolgozására szekvenciális tulajdonságok listája.

Amint látható a fenti kódot voltak ListIterator szabályozására szolgáló módszerek egy iterátor fordított sorrendben: hasPrevious (), az előző (), previousIndex ().

Egy sor elemek (allista) - lehetővé teszi, hogy manipulálni egy tetszőleges tartományt a listából. Ezt használja allista () módszer. Mint ez:

allista () metódus elfogadja a két érték: start index és vége indexe allista. Vegye figyelembe, hogy a különböző elemek (lista) nem hoz létre ismétlődő elemeket a szülő listából. Ez a lista egy részét a szülő lista, hogy mi minden manipuláció őket tükröződik a szülő listán. A fenti példa egy jó bemutató.

Szintén fontos megjegyezni, hogy egy elem véges index nem szerepel a listán.

Az 1. ábra mutatja a hierarchia a List osztály.

Gyűjtemények (gyűjtemények) a java

1. ábra: A hierarchia List keretében, gyűjtemények

List interfész is tartozik két idősebb osztály: vektor és Stack, amelyek azt az előző cikkben.

Ellentétben Set, List tartalmazhat ismétlődő elemeket. Tartalmazhat továbbá null-elemek.

Néhány megvalósításai listák korlátozások az elemeket, amelyek tartalmazhatnak. Például egyes megvalósítások, a null nem lehet használni, mint egy tagja a bevezetésre (ArrayList és láncolt lista ezen a szabály nem vonatkozik).

Két azonos List objektum típusát (azaz egyenlő () metódus visszaadja igaz) csak akkor, ha ugyanazokat az elemeket tartalmazzák ugyanabban a sorrendben.

ArrayList - a legszélesebb körben használt végrehajtását List. ArrayList a legmagasabb teljesítményt a hozzáférést egy véletlenszerű elemet a tömbben.

Láncolt lista - egy másik megvalósítása az interfész List. Ellentétben ArrayList, láncolt lista is nagyobb sebességet behelyezhető elem tetszőleges helyzetben a lista azonban a hozzáférést egy elemhez egyenesen arányos viszonyított helyzete a sorozat kezdete.

Kapcsolódó cikkek