Del*_*ino 7 java iterator illegalstateexception
在下面的代码中,我有一个try catch块,尝试使用Iterator从Vector中删除元素.我创建了自己的QueueExtendingVect扩展Vector和实现的类Iterator.
该变量qev1是类的实例QueueExtendingVect.我已经为这个Vector添加了一些元素.
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));
}
}
Run Code Online (Sandbox Code Playgroud)
在这段代码中,我向Vector qev1添加了一些元素.其他变量在代码的其他部分.
但是,当我运行我的程序时,我在运行时得到一个IllegalStateException.我不确定这意味着什么.
rge*_*man 27
你没有打电话next()给你Iterator,所以它还没有提到第一个项目.您无法删除尚未指定的项目.
先呼叫next()前进到第一个项目,然后再打电话remove().
| 归档时间: |
|
| 查看次数: |
14961 次 |
| 最近记录: |