English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 튜토리얼

Java 프로세스 제어

Java 배열

Java 객체지향(I)

Java 객체지향(II)

Java 객체지향(III)

Java 예외 처리

Java 목록(List)

Java Queue(큐)

Java Map 컬렉션

Java Set 컬렉션

Java 입력/출력(I/O)

Java Reader/Writer

Java 다른 주제

Java ListIterator 인터페이스

이 튜토리얼에서는 예제를 통해 Java ListIterator 인터페이스를 배웁니다.

Java 컬렉션 프레임워크 인터페이스 ListIterator는 목록 요소에 접근할 수 있는 기능을 제공합니다.

그것은 양방향입니다. 이는 두 방향으로 목록 요소를 반복할 수 있게 합니다.

그것은 Iterator 인터페이스를 상속합니다

List 인터페이스는 ListIterator() 메서드를 제공합니다. 이 메서드는 ListIterator 인터페이스의 인스턴스를 반환합니다

ListIterator 메서드

ListIterator 인터페이스는 리스트 요소에 대한 다양한 작업을 수행할 수 있는 메서드를 제공합니다

  • hasNext() - 리스트에 요소가 있으면 true를 반환합니다

  • next() - 리스트의 다음 요소를 반환합니다

  • nextIndex() - next() 메서드가 반환한 요소의 인덱스를 반환합니다

  • previous() - 리스트의 이전 요소를 반환합니다

  • previousIndex()- previous() 메서드가 반환한 요소의 인덱스를 반환합니다

  • remove()- next() 또는 previous()가 반환한 요소를 제거합니다

  • set() - next() 또는 previous()가 반환한 요소를 지정된 요소로 대체합니다

예제1:ListIterator 구현

아래의 예제에서는 배열리스트에 ListIterator 인터페이스의 next()、nextIndex() 및 hasNext() 메서드를 구현했습니다.

import java.util.ArrayList;
import java.util.ListIterator;
class Main {
    public static void main(String[] args) {
        //ArrayList을 생성합니다
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(3);
        numbers.add(2);
        System.out.println("ArrayList: " + numbers);
        //ListIterator의 인스턴스를 생성합니다
        ListIterator<Integer> iterate = numbers.listIterator();
        //next() 메서드를 사용합니다
        int number1 = iterate.next();
        System.out.println("다음 요소: " + number1);
        //nextIndex()를 사용합니다
        int index1 = iterate.nextIndex();
        System.out.println("다음 요소 위치: " + index1);
        //hasNext() 메서드를 사용합니다
        System.out.println("다음 요소가 있습니다吗? " + iterate.hasNext());
    }
}

출력 결과

ArrayList: [1, 3, 2]
다음 요소: 1
다음 요소 위치: 1
다음 요소가 있습니다吗? true

예제2:ListIterator 구현

아래의 예제에서는 배열리스트에 ListIterator 인터페이스의 previous()와 previousIndex() 메서드를 구현했습니다.

import java.util.ArrayList;
import java.util.ListIterator;
class Main {
    public static void main(String[] args) {
        //ArrayList을 생성합니다
        ArrayList<Integer> numbers = new ArrayList<>();
        numbers.add(1);
        numbers.add(3);
        numbers.add(2);
        System.out.println("ArrayList: " + numbers);
        //ListIterator의 인스턴스를 생성합니다
        ListIterator<Integer> iterate = numbers.listIterator();
        iterate.next();
        iterate.next();
        //previous() 메서드를 사용하여
        int number1 = iterate.previous();
        System.out.println("이전 요소: \ + number1);
        //previousIndex()를 사용하여
        int index1 = iterate.previousIndex();
        System.out.println("이전 요소 위치: \ + index1);
    }
}

출력 결과

ArrayList: [1, 3, 2]
이전 요소: 3
이전 요소 위치: 0

위의 예제에서, 초기 이터레이터 인스턴스는1앞에 있었습니다.1앞에 요소가 없기 때문에 previous() 메서드를 호출하면 예외가 발생합니다.

그런 다음, 우리는 next()를 사용했습니다.2이 메서드를 호출합니다. 이제 Iterator 인스턴스는3로2사이에

따라서 previous() 메서드는3。