작업중인 경우 시퀀스를 인쇄하고 싶다고하면 Java의 Iterator가 등장합니다. 이렇게하면 각 줄마다 print 문을 추가하지 않고도 시퀀스를 얻을 수 있습니다. 이제 Iterator에 대해 알아 보겠습니다. .
다음은이 모듈에서 다룰 주제입니다.
시작하자!
Java에서 tostring은 무엇을 의미합니까?
반복 자란 무엇입니까?
Java는 주로 네 가지 커서를 지원합니다. 즉,
- 열거
- 반복자
- ListIterator
- 쪼개는 도구
이러한 각 Java 커서에는 몇 가지 장점과 단점이 있습니다. 이 기사에서는 Iterator에 초점을 맞출 것입니다.
자, Java에서 반복자는 무엇입니까?
반복자 컬렉션 프레임 워크에 속하는 인터페이스입니다. 컬렉션을 탐색하고 데이터 요소에 액세스하고 컬렉션의 데이터 요소를 제거 할 수 있습니다.
또한 모든 항목에 적용 할 수 있으므로 범용 반복기로 간주됩니다. 목적. 반복자를 사용하여 읽기 및 제거 작업을 모두 수행 할 수 있습니다. 이것은 개선 된 버전입니다 열거 요소 제거 가능성의 추가 기능과 함께.
자바 반복기 메서드
Java iterator에는 총 4 개의 메소드가 있습니다. 자세히 이해합시다.
행동 양식 | 기술 |
---|---|
forEachRemaining (소비) | 모든 요소가 처리 될 때까지 각 요소에 대한 작업을 수행합니다. 또한 조치에 의해 예외가 발생할 때까지. |
hasNext () | 이 보고 반복 중에 많은 수의 요소가 발견되면 참 값. |
다음() | 이 보고 반복 중 다음으로 지정된 요소. |
없애다() | 이 방법 r현재 요소를 제거합니다. 던짐 IllegalStateException next ()에 대한 호출이 선행되지 않은 remove ()를 호출하려는 경우. |
부울 hasNext () | 반복에 더 많은 요소가 있으면 true를 반환합니다. |
예:
class Method {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 ') // 목록을 순회하는 반복기 Iterator = list.iterator () System.out.println ('List elements : ') while (iterator.hasNext ()) System.out.print (iterator.next () +' ') System.out.println ()}}
출력 : EDUREKA
Java의 ListIterator를 살펴 보겠습니다.
자바의 ListIterator
C ++에서 배열을 정렬하는 방법
ListIterator Java에서는 사용자가 컬렉션을 양방향으로 탐색 할 수있는 Iterator입니다. 다음과 같은 방법이 있습니다.
행동 양식 | 방법 및 설명 |
---|---|
void add (Object obj) | next ()에 대한 다음 호출에서 반환 될 요소 앞의 목록에 obj를 삽입합니다. |
부울 hasNext () | 다음 요소가 있으면 true를 반환합니다. 그렇지 않으면 false를 반환합니다. |
부울 hasPrevious () | 이전 요소가 있으면 true를 반환합니다. 그렇지 않으면 false를 반환합니다. |
다음 개체 () | 다음 요소를 반환합니다. 다음 요소가 없으면 NoSuchElementException이 발생합니다. |
int nextIndex () | 다음 요소의 인덱스를 반환합니다. 다음 요소가 없으면 목록의 크기를 반환합니다. |
이전 개체 () | 이전 요소를 반환합니다. 이전 요소가 없으면 NoSuchElementException이 발생합니다. |
int previousIndex () | 이전 요소의 인덱스를 반환합니다. 이전 요소가 없으면 -1을 반환합니다. |
무효 제거 () | 목록에서 현재 요소를 제거합니다. next () 또는 previous ()가 호출되기 전에 remove ()가 호출되면 IllegalStateException이 발생합니다. |
void set (Object obj) | 현재 요소에 obj를 할당합니다. next () 또는 previous () 호출에 의해 마지막으로 반환 된 요소입니다. |
예:
public class Lists {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의 원래 내용 :') Iterator itr = al.iterator () while (itr.hasNext ()) {Object element = itr.next () System.out.print (element + '' )} System.out.println () // 반복되는 객체 수정 ListIterator litr = al.listIterator () while (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 ( 'Modified list backwards :') while (litr.hasPrevious ()) {Object element = litr.previous () System.out. print (element + '')} System.out.println ()}}
산출:
실물al의 내용:E D U R E K A
수정 됨al의 내용:IS+디+유+아르 자형+IS+에+ A +
수정 됨거꾸로 나열:에+에+IS+아르 자형+유+디+ 및 +
java에서 int로 double
이제 Java에서이 반복기 인터페이스의 장점과 제한 사항을 살펴 보겠습니다.
Java에서 반복자의 장점
Java의 Iterator에는 다음과 같은 장점이 있습니다.
- 컬렉션 클래스에 대해 이러한 반복기를 사용할 수 있습니다.
- Java의 Iterator는 읽다 만큼 잘 없애다 작업.
- 사용하는 경우 for 루프 당신은 할 수 없습니다 컬렉션을 업데이트 (추가 / 제거)하는 반면 반복자의 도움으로 컬렉션을 쉽게 업데이트 할 수 있습니다.
- Collection API의 범용 커서입니다.
- 메서드 이름은 매우 간단하고 사용하기 매우 쉽습니다.
Java에서 반복자의 한계
Java의 반복자에는 다음과 같은 단점이 있습니다.
- 순방향 반복, 즉 단방향 반복 만 수행 할 수 있습니다.
- 새 요소의 교체 및 추가는 Iterator에서 지원되지 않습니다.
- ListIterator는 가장 강력한 반복자이지만 List 구현 클래스에만 적용 할 수 있습니다. 따라서 유니버설 반복자가 아닙니다.
- CRUD 작업을 사용하는 경우 생성 및 업데이트 작업을 지원하지 않습니다.
- Spliterator와 비교할 때 요소를 병렬로 반복 할 수 없습니다. 이는 순차 반복 만 지원함을 의미합니다.
- 대량의 데이터를 반복하는 데 더 나은 성능을 지원하지 않습니다.
이것으로 Java에서 반복기가 작동하는 방법에 대해 배운이 기사의 끝으로 이동합니다. 이 튜토리얼에서 여러분과 공유 한 모든 내용이 명확하기를 바랍니다.
'자바의 반복자'에 대한이 기사가 관련이있는 경우 전 세계에 250,000 명 이상의 만족 한 학습자 네트워크를 보유한 신뢰할 수있는 온라인 학습 회사입니다.
우리는 여정의 모든 단계에서 귀하를 돕기 위해 여기에 있습니다.이 외에도 Java 개발자가 되고자하는 학생 및 전문가를 위해 설계된 커리큘럼을 마련했습니다. 이 과정은 Java 프로그래밍을 시작하고 Hibernate & Spring과 같은 다양한 Java 프레임 워크와 함께 핵심 및 고급 Java 개념 모두에 대해 교육하도록 설계되었습니다.
질문이 있으시면 '자바의 반복자'의 코멘트 섹션에 모든 질문을 남겨 주시면 저희 팀이 기꺼이 답변 해 드리겠습니다.