아래 코드에서 Iterator를 사용하여 Vector에서 요소를 제거하려고 시도하는 try catch 블록이 있습니다. Vector를 확장하고 Iterator를 구현하는 자체 클래스 인 QueueExtendingVect를 만들었습니다.Iterator.remove() IllegalStateException
유효한 qev1은 QueueExtendingVect 클래스의 인스턴스입니다. 이미이 벡터에 몇 가지 요소를 추가했습니다. 이 코드에서
try {
qev1.iterator().remove();
}catch(UnsupportedOperationException e){
System.out.println("Calling Iterator.remove() and throwing exception.");
}
qev1.enqueue(ci);
qev2.enqueue(ci);
qcv1.enqueue(ci);
qcv2.enqueue(ci);
for(int i = 1; i < 5; i++){
if(i % 2 == 0){
qev1.enqueue(new CInteger(i+1));
qev2.enqueue(new CInteger(i+1));
qcv1.enqueue(new CInteger(i+1));
qcv2.enqueue(new CInteger(i+1));
}
else {
qev1.enqueue(new Date(i*i));
qev2.enqueue(new Date(i*i));
qcv1.enqueue(new Date(i*i));
qcv2.enqueue(new Date(i*i));
}
} 은 내가 벡터 qev1에 몇 가지 요소를 추가 할 수 있습니다. 다른 변수는 코드의 다른 부분에 있습니다. 그러나 프로그램을 실행할 때 런타임에 IllegalStateException이 발생합니다. 나는 이것이 무엇을 의미하는지 모른다.
반복기에 아무 것도 없나요? 더 많은 코드를 입력하십시오. 구체적으로 반복되는 컬렉션은 어떤 유형입니까? –