2014-06-14 9 views
-4

사용자가 다음 또는 이전 항목으로 이동할 수있는 옵션이있는 항목 목록이 있고 프로그램에서 한 번에 하나의 항목 만 표시해야합니다.추가 및 삭제가있는 Java LinkedList 노드

Java에 LinkedListNode 클래스가 있습니까? 아니면 해당 구현을 포함하는 라이브러리가있어서 목록을 탐색하여 동시에 요소를 추가하거나 제거 할 수 있습니까? 나는 자바가 listIterator를 가지고 있지만 목록을 수정할 때 ConcurrentModificationException이 발생한다는 것을 알고있다. (ConcurrentModificationException이 발생할 때)

+0

'java.util.LinkedList'가 존재하며, java.util.ListIterator도 마찬가지입니다. 반복하는 동안 요소를 추가 할 수 있다면 100 % 확신 할 수는 없지만 반복기를 사용하여 요소를 확실히 제거 할 수는 있습니다. 달성하려는 대상의 범위에 따라 표시 할 목록의 읽기 전용 복사본을 반환하고 다른 곳에서 돌연변이 (더하기, 빼기)를 허용하는 것이 좋습니다. – Makoto

+0

이 페이지 매김이 자바입니까? –

답변

0

반복자를 사용하는 동안 삭제하거나 추가 할 수 없다고 생각하지만, for 루프를 사용하면 해당 현재 색인을 사용하여 삭제 또는 추가 할 수 있습니다.

Scanner scanner = new Scanner(System.in); 
ArrayList<string> theList = new ArrayList<>(); 
String input = ""; 
for (int i=0; i<t.size(); i++) 
    { 
    input = scanner.nextLine(); 
    if (input.equals("1")); //then delete 
     theList.remove(i); 
    else if(input.equals("2")) 
     { 
     theList.add(i, scanner.nextLine()); 
     } 
    }