A java alapvető kézikönyv

Az alkalmazások fejlesztése során gyakran találkozunk annak szükségességével, hogy elérjük a gyűjtemény összes elemét. Például jelenítse meg ezeket az elemeket.
A legegyszerűbb és leghatékonyabb módja az iterátor használata. Az iterátor olyan objektum, amely az Iterator interfészeket valósítja meg. vagy ListIterator.

Az Iterator lehetővé teszi számunkra, hogy elérjük a gyűjtemény összes elemét, és távolítsuk el azokat, amelyekre szükségünk van. A ListIterator az Iterator örököse, és lehetővé teszi számunkra, hogy mindkét irányban "megyünk át" a gyűjteményt. A ListIterator lehetővé teszi számunkra az elemek módosítását is.

Az iterátor használatához először meg kell kérnünk. Ehhez az iterator () metódust kell használnunk.

Az Iterator a következő módszerekkel rendelkezik:

  • bollean hasNext ()
    Ez a módszer ellenőrzi, hogy a következő elem létezik-e a gyűjteményben. Ha van, akkor a módszer true true. ha nem, hamis.
  • Objektum következő ()
    Ez a módszer visszaadja a gyűjtemény következő elemét. Ha az elem nem található, a módszer "dobja" a NoSuchElementException.
  • void remove ()
    Ez a módszer törli az aktuális elemet. A lényeg az, hogy először ezt az elemet a következő () módszerrel kell megkapnunk. ha eltávolítjuk () a következő () metódus előtt. akkor kap egy IllegalStateException.

A ListIterator számos módszerrel rendelkezik:

  • void add (Objektum obj)
    Ez a módszer a következő () metódussal kapott elem után hozzáadja az elemet a gyűjteményhez a következő pozícióba.
  • logikai hasNext ()
    Ez a módszer ellenőrzi, hogy a következő elem létezik-e a gyűjteményben. Ha van, akkor a módszer true true. ha nem, hamis.
  • logikai hasPreviuos ()
    Ez a módszer ellenőrzi, hogy létezik-e egy korábbi elem a gyűjteményben. Ha van, akkor a módszer true true. ha nem, hamis.
  • Objektum következő ()
    Ez a módszer visszaadja a gyűjtemény következő elemét. Ha az elem nem található, a módszer "dobja" a NoSuchElementException.
  • Objektum előző ()
    Ez a módszer visszaadja a gyűjtemény előző elemét. Ha az elem nem található, a módszer "dobja" a NoSuchElementException.
  • int nextIndex ()
    Ez a módszer a következő elem indexét adja vissza. Ha a következő tételt el kell hagyni a gyűjteményből, a gyűjtemény mérete visszaadódik.
  • int previousIndex ()
    Ez a módszer visszaadja az előző elem indexét. Ha az előző tételt elhagyja a gyűjteményből, akkor -1 értéket ad vissza.
  • void set (objektum obj)
    Ez a módszer hozzárendeli az aktuális elemhez azt a értéket, amelyet a módszer paraméterként továbbít.
  • void remove ()
    Ez a módszer törli az aktuális elemet. A lényeg az, hogy először ezt az elemet először a következő () metódussal vagy az előző () módszerrel kell megkapnunk. ha eltávolítjuk () a következő () metódust vagy az előző () metódust. akkor kap egy IllegalStateException.

Annak megértéséhez, hogy ez hogyan működik a gyakorlatban, fontolja meg egy egyszerű alkalmazás példáját.

A program eredményeképpen a következő eredményre jutunk:

Ebben a részben megtudtuk az Iterator és a ListIterator interfészek alapjait. és rassotrely példa egy egyszerű alkalmazás és annak használatát.