我正在使用if语句,并且在运行它时会显示异常java.util.NoSuchElementException
代码如下所示
if (BackgroundService.pendingQueue != null) {
logger.error("Here is clear step next 2 ");
BackgroundService.pendingQueue.remove();
logger.error("Here is clear step next 3 ");
}
logger.info("BackgroundService.pendingQueue="+BackgroundService.pendingQueue.
size());
if(BackgroundService.pendingQueue.size() == 0){
BackgroundService.pendingQueue.clear();
}
logger.info("BackgroundService.pendingQueue after task done is ="+BackgroundService.pendingQueue.size());
}
该示例在
BackgroundService.pendingQueue.remove();
语句的“清除步骤2”和“清除步骤3”之间显示。如果您有解决方案,请以该解决方案答复
最佳答案
我可以想象您的对象是一种队列。
如果尝试删除空队列上的对象,则会引发NoSuchElementException异常。
因此,在尝试删除某些内容之前,您需要检查队列是否不为空:
if(!BackgroundService.pendingQueue.isEmpty()){
BackgroundService.pendingQueue.remove();
}
关于java - 使用队列时出现java.util.NoSuchElementException,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31802837/