English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이 튜토리얼에서는 예제를 통해 Java ListIterator 인터페이스를 배웁니다.
Java 컬렉션 프레임워크 인터페이스 ListIterator는 목록 요소에 접근할 수 있는 기능을 제공합니다.
그것은 양방향입니다. 이는 두 방향으로 목록 요소를 반복할 수 있게 합니다.
그것은 Iterator 인터페이스를 상속합니다
List 인터페이스는 ListIterator() 메서드를 제공합니다. 이 메서드는 ListIterator 인터페이스의 인스턴스를 반환합니다
ListIterator 인터페이스는 리스트 요소에 대한 다양한 작업을 수행할 수 있는 메서드를 제공합니다
hasNext() - 리스트에 요소가 있으면 true를 반환합니다
next() - 리스트의 다음 요소를 반환합니다
nextIndex() - next() 메서드가 반환한 요소의 인덱스를 반환합니다
previous() - 리스트의 이전 요소를 반환합니다
previousIndex()- previous() 메서드가 반환한 요소의 인덱스를 반환합니다
remove()- next() 또는 previous()가 반환한 요소를 제거합니다
set() - next() 또는 previous()가 반환한 요소를 지정된 요소로 대체합니다
아래의 예제에서는 배열리스트에 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
아래의 예제에서는 배열리스트에 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。