Рецоммендед, 2024

Избор Уредника

Разлика између Итератор и ЛистИтератор у Јави

Итератор и ЛистИтератор су два од три курсора Јаве. Итератор и ЛистИтератор су дефинисани Оквиром збирке у Ј ава.Утил пакету. ЛистИтератор је дете интерфејс Итератор интерфејса. Главна разлика између Итератор-а и ЛистИтератор-а је да Итератор може да пређе елементе у збирци само у правцу напред, док ЛистИтератор може да пређе елементе у збирци у правцу напред и назад .

Размотримо још неке разлике између Итератор-а и ЛистИтератор-а уз помоћ табеле за успоредбу приказане испод.

Цомпарисон Цхарт

Основа за поређењеИтераторЛистИтератор
БасицИтератор може да пређе елементе у збирци само у правцу напред.ЛистИтератор може да пређе елементе у збирци у правцу напред и назад.
ДодатиИтератор не може да дода елементе у колекцију.ЛистИтерор може додати елементе у колекцију.
МодификоватиИтератор не може модификовати елементе у колекцији.ЛистИтератор може модификовати елементе у збирци користећи сет ().
прећиИтератор може да пређе мапу, листу и сет.ЛистИтератор може да прелази само објекте листе.
ИндекИтератор нема методу за добијање индекса елемента у збирци.Користећи ЛистИтератор, можете добити индекс елемента у збирци.

Дефиниција Итератора

Итератор је интерфејс у ​​оквиру за прикупљање . Користи се за прелазак кроз елементе прикупљања. Итератор вам омогућава да понављате сваки елемент у збирци један по један, да добијете елементе из збирке или да уклоните елементе из колекције. Можете приметити да не можете модификовати ниједан елемент у колекцији користећи Итератор.

Итератор има методу итератор () која враћа итератор на почетак колекције. Када једном добијете итератор за почетак збирке, онда пређите преко елемената у колекцији успоставите петљу која позива хасНект () сваки пут када се петља итерира. ХасНект () ако враћа труе, то значи да је следећи елемент у колекцији, а ако се врати фалсе онда то значи да су сви елементи прешли. Затим унутар петље можете добити сваки елемент у колекцији користећи нект () . Метод нект () враћа следећи елемент колекције.

Недостатак:

Користећи Итератор можете прећи збирку само у правцу напред.
Користећи Итератор, не можете манипулисати или модификовати елементе у колекцији.

Дефиниција ЛистИтератор

ЛистИтератор је интерфејс у ​​оквиру колекције и проширује интерфејс Итератор . Користећи ЛистИтератор, можете прећи елементе колекције у правцу напред и назад . Такође, можете додати, уклонити или изменити било који елемент у колекцији. Укратко, можемо рећи да уклања недостатке Итератора.

Методе ЛистИтератор-а су следеће:

хасНект () : Ако врати труе потврђује да има више елемената у збирци.
нект () : Враћа следеће елементе листе.
нектИндек () : Враћа индекс следећих елемената на листи.
хасПревиоус () : Враћа труе ако постоје елементи у обрнутом смјеру у збирци.
превиоус () : Враћа претходни елемент у збирци.
превиоусИндек () : Враћа индекс претходног елемента у збирци.
ремове () : Избришите елемент из колекције.
сет () : Модификује елемент у збирци.
адд () : Додаје нови елемент у колекцију.

Кључне разлике између Итератора и ЛистИтератора

  1. Основна разлика између Итератор-а и ЛистИтератор-а је да су оба курсора, Итератор може да пређе елементе у збирци само у правцу напред. С друге стране, ЛистИтератор може да пређе у правцу напред и назад.
  2. Користећи итератор не можете додати ниједан елемент у колекцију. Али, помоћу ЛистИтератор-а можете додати елементе у колекцију.
  3. Користећи Итератор, не можете уклонити елемент у колекцији где, као што можете уклонити елемент из колекције користећи ЛистИтератор.
  4. Користећи Итератор можете прећи све збирке као што су Мап, Лист, Сет. Али, помоћу ЛистИтерор-а можете проћи само кроз имплементиране објекте.
  5. Можете преузети индекс неког елемента користећи Итератор. Али пошто је листа секвенцијална и заснована на индексу, можете преузети индекс неког елемента користећи ЛистИтератор.

Закључак:

ЛистИтератор можете користити када посебно желите да пређете кроз објекат Лист у правцу напред и назад. Исто тако, можете користити Итератор јер подржава све објекте типа колекције.

Top