Ако работите по a и кажете, че искате да отпечатате последователност, това е мястото, където Iterator в Java влиза в картината. По този начин можете да получите последователността, дори без да добавяте инструкцията за печат за всеки ред. И така, нека научим за Iterator в .
По-долу са темите, които ще разгледам в този модул:
Да започваме!
Какво е итератор?
Java поддържа главно четири различни курсора. Те са именно:
- Изброяване
- Итератор
- ListIterator
- Разделител
Всеки от тези курсори на Java има някои предимства и недостатъци. В тази статия ще се спрем на Iterator.
как да използвам tostring в java -
Какво представлява итераторът в Java?
Итератор е интерфейс, който принадлежи към рамка за събиране. Тя ви позволява да прекосите колекцията, да осъществи достъп до елемента с данни и да премахне елементите от данни на колекцията.
Също така се счита за универсален итератор, тъй като можете да го приложите към всеки обект. Използвайки итератор, можете да извършвате операции за четене и премахване. Това е подобрена версия на Изброяване с допълнителните функционалности на способността за премахване на елемент.
Методи на Java Iterator
Java итераторът има общо 4 метода. Нека ги разберем подробно.
следдипломна диплома срещу магистърска степен
Методи | Описание |
---|---|
forEachRemaining (Консумация) | Той изпълнява действията върху всеки от елементите, докато и освен ако не бъдат обработени всички елементи. Също така, докато действието не изведе изключение. |
hasNext () | Това се завръща истинска стойност, ако по време на итерация се срещне голям брой елементи. |
следващия() | Това се завръща следващия посочен елемент по време на итерацията. |
Премахване() | Този метод rизлъчва текущия елемент. Хвърля IllegalStateException ако е направен опит за извикване на remove (), който не е предшестван от повикване към next (). |
логически hasNext () | Това връща true, ако итерацията има повече елементи. |
Пример:
class Метод {public static void main (String [] args) ArrayList list = new ArrayList () list.add ('E') list.add ('D') list.add ('U') list.add ('R ') list.add (' E ') list.add (' K ') list.add (' A ') // Итератор за прекосяване на списъка Итератор итератор = list.iterator () System.out.println (' Елементи на списъка : ') while (iterator.hasNext ()) System.out.print (iterator.next () +' ') System.out.println ()}}
Изход: EDUREKA
Нека да разгледаме ListIterator в Java.
ListIterator in Java
ListIterator в Java е итератор, който позволява на потребителите да преминават през колекцията в двете посоки. Той съдържа следните методи:
Методи | Метод и описание |
---|---|
void add (Object obj) | Вмъква obj в списъка пред елемента, който ще бъде върнат от следващото повикване към next (). |
логически hasNext () | Връща true, ако има следващия елемент. В противен случай връща false. |
boolean hasPrevious () | Връща true, ако има предишен елемент. В противен случай връща false. |
Обект следващ () | Връща следващия елемент. Изхвърля се NoSuchElementException, ако няма следващия елемент. |
int nextIndex () | Връща индекса на следващия елемент. Ако няма следващия елемент, връща размера на списъка. |
Предишен обект () | Връща предишния елемент. Изхвърля се NoSuchElementException, ако няма предишен елемент. |
int previousIndex () | Връща индекса на предишния елемент. Ако няма предишен елемент, връща -1. |
премахване на празнотата () | Премахва текущия елемент от списъка. Изхвърля се IllegalStateException, ако се извика remove () преди да се извика next () или previous (). |
void set (Object obj) | Присвоява obj на текущия елемент. Това е елементът, върнат за последно при повикване към next () или предишен (). |
Пример:
списъци с публичен клас {public static void main (String args []) {// Създаване на списък с масиви ArrayList al = new ArrayList () // добавяне на елементи към списъка с масиви al.add ('E') al.add ('D ') al.add (' U ') al.add (' R ') al.add (' E ') al.add (' K ') al.add (' A ') // Използвайте итератор за показване на съдържанието на al System.out.print ('Оригинално съдържание на al:') Итератор itr = al.iterator () while (itr.hasNext ()) {Object element = itr.next () System.out.print (element + '' )} System.out.println () // Промяна на обекти, които се итерират ListIterator litr = al.listIterator () докато (litr.hasNext ()) {Object element = litr.next () litr.set (element + '+') } System.out.print ('Модифицирано съдържание на al:') itr = al.iterator () while (itr.hasNext ()) {Object element = itr.next () System.out.print (element + '') } System.out.println () // Сега покажете списъка назад System.out.print ('Модифициран списък назад:') while (litr.hasPrevious ()) {Object element = litr.previous () System.out. print (element + '')} System.out.println ()}}
Изход:
Оригиналсъдържание на ал:Е Д У Р Е К А
Модифицирансъдържание на ал:Е+д+U+R+Е+ДА СЕ+ A +
Модифицирансписък назад:ДА СЕ+ДА СЕ+Е+R+U+д+ И +
Сега, нека да разгледаме предимствата и ограниченията на този интерфейс на итератор в Java.
Предимства на Iterator в Java
Iterator в Java има следните предимства.
- Можете да използвате тези итератори за всеки клас Collection.
- Iterator в Java поддържа и двете Прочети както и Премахване операции.
- Ако използвате за цикъл не можеш актуализирайте (добавете / премахнете) колекцията, докато с помощта на итератор можете лесно да актуализирате колекцията.
- Това е универсален курсор за API за събиране.
- Имената на методите са много прости и са много лесни за използване.
Ограничения на Iterator в Java
Итераторите в Java имат следните недостатъци:
- Можете да извършвате само итерация на посока напред, т.е. Uni-Directional Iterator.
- Замяната и добавянето на нов елемент не се поддържа от Iterator.
- ListIterator е най-мощният итератор, но е приложим само за изпълнени списъци класове. Така че не е универсален итератор.
- Когато използвате CRUD Operations, той не поддържа операциите за създаване и актуализиране.
- Когато го сравнявате със Spliterator, той не ви позволява да повтаряте паралелно елементи. Това означава, че поддържа само последователна итерация.
- Той не поддържа по-добра производителност за повторение на голям обем данни.
Това ни води до края на тази статия, където научихме как работи итераторът в Java. Надявам се, че сте наясно с всичко споделено с вас в този урок.
mvc шаблон за дизайн в java
Ако сте намерили тази статия за „Итератор в Java“ подходяща, разгледайте доверена компания за онлайн обучение с мрежа от над 250 000 доволни учащи, разпространени по целия свят.
Ние сме тук, за да ви помогнем във всяка стъпка по вашето пътуване, освен това ние изготвяме учебна програма, предназначена за студенти и професионалисти, които искат да бъдат разработчик на Java. Курсът е предназначен да ви даде начален старт в програмирането на Java и да ви обучи както за основни, така и за разширени Java концепции, заедно с различни Java рамки като Hibernate & Spring.
Ако попаднете на някакви въпроси, не се колебайте да зададете всичките си въпроси в раздела за коментари на „Iterator в Java“ и нашият екип ще се радва да отговори.