У мінулым уроку мы абмяркоўвалі итератор ў Java з дапамогай якога мы можам прайсці спіс або паказаныя ў прамым кірунку. Тут мы абмяркуем ListIterator, што дазваляе нам праходзіць па спісе ў абодвух напрамках (наперад і назад).
прыклад ListIterator
У гэтым прыкладзе мы абыход ў ArrayList ў абодвух напрамках.
імпарт java.util.ArrayList; імпарт java.util.List; імпарт java.util.ListIterator; грамадскі клас ListIteratorExample { дзяржаўнай статычнай сілы асноўных (String а []) { ListIterator <String> = нуль літар :; Спіс <String> імёны = новы ArrayList <String> (); names.add ( "Шы"); names.add ( "Раджат"); names.add ( "Пол"); names.add ( "Том"); names.add ( "Кейт"); // Атрыманне спісу итератора = Names.listIterator літар: (); System.out.println ( «Абыход спісу ў прамым напрамку:"); у той час як (litr.hasNext ()) {System.out.println (litr.next ()); } System.out.println ( "\ nTraversing спіс у адваротным кірунку:"); у той час як (litr.hasPrevious ()) {System.out.println (litr.previous ()); } } }
выхад:
Абыход спісу ў прамым напрамку: Shyam Раджу падлогу тым Кейт Перасякаючы спіс у адваротным кірунку: Кейт тым падлогу Раджу Shyam
Заўвага: Мы можам выкарыстоўваць итератор для абыходу List і Set абодвух, але з дапамогай ListIterator мы можам толькі траверс спіс. Ёсць некалькі іншых адрозненняў паміж итератором і ListIterator, мы абмяркуем іх у наступным пасце.
метады ListIterator
1) дадаць несапраўднымі (Е е): Уставіць ўказаны элемент у спісе (дадатковая работа).
2) лагічны hasNext (): Вяртае ісціну, калі гэты спіс итератор мае некалькі элементаў пры перамяшчэнні спісу ў прамым кірунку.
3) булева hasPrevious (): Вяртае ісціну, калі гэты спіс итератор мае больш элементаў пры перамяшчэнні спісу ў зваротным кірунку.
4) E Наступны (): Вяртае наступны элемент у спісе і перамяшчае пазіцыю курсора.
5) Int NEXTINDEX (): вяртае індэкс элемента, які будзе вернуты пры наступным выкліку да наступнага ().
6) Е папярэдні (): Вяртае папярэдні элемент у спісе і перамяшчае пазіцыю курсора ў зваротным кірунку.
7) Int previousIndex (): вяртае індэкс элемента, які будзе вернуты наступным выклікам да папярэдняй ().
8) несапраўднымі выдаліць (): Выдаляе з спісу апошні элемент, які быў вернуты на наступным () або папярэдняй () (дадатковая работа).
9) несапраўднае мноства (Е е): Замяняе апошні элемент, вернуты наступным () або папярэднім () з паказаным элементам (дадатковая работа).
Ці магу я выкарыстаць спіс итератора with.hashmap ???