1、等队列满了之后,将元素再次插入到队列,就会抛出IllegalStateException(QueueFull)异常。
2、如果队列为空,那么从队列中提取一个元素将引发NoSuchElementException异常。
实例
public class MyBlockQueue {
public static void main(String[] args) {
ArrayBlockingQueueq = new ArrayBlockingQueue(3);
new Thread(()->{
q.add(1);
System.out.println(Thread.currentThread().getName()+"放入一个元素");
q.add(2);
System.out.println(Thread.currentThread().getName()+"放入一个元素");
q.add(3);
System.out.println(Thread.currentThread().getName()+"放入一个元素");
},"线程1").start();
new Thread(()->{
q.remove();
System.out.println(Thread.currentThread().getName()+"拿走一个元素");
q.remove();
System.out.println(Thread.currentThread().getName()+"拿走一个元素");
q.remove();
System.out.println(Thread.currentThread().getName()+"拿走一个元素");
q.remove();
System.out.println(Thread.currentThread().getName()+"拿走一个元素");
},"线程2").start();
}
}
以上就是java队列抛出异常的介绍,希望对大家有所帮助。更多关于“java培训”的问题,欢迎咨询千锋教育在线名师。千锋教育多年办学,课程大纲紧跟企业需求,更科学更严谨,每年培养泛IT人才近2万人。不论你是零基础还是想提升,都可以找到适合的班型,千锋教育随时欢迎你来试听。