DESKTOP-7D2I5KK_20200908-郎航

问题

Queue<String> queue = new LinkedList<>();
System.out.println( queue );
queue.add( "顺治" ); 
String header = queue.element();
header = queue.remove();
queue.offer( "顺治" );
String header = queue.peek();
header = queue.poll();

两种代码功能一样的,那为什么还要用第二种方法呢?

解决

header = queue.element(); // 当队列为空时,如果调用element()方法就会抛出NoSuchElementException
header =queue.remove(); // 当队列为空时,如果调用remove()方法就会抛出NoSuchElementException
//当队列为空时,他们就已经不能再返回或删除队列头部元素
String header = queue.peek();
header = queue.poll();
//这两种方法并不会抛出异常
//只会返回null值

吐槽

下午太闷了。这些方法有点把自己绕进去了,一会儿是First,一会是Last的。左左右右,右右左左!!!

标签

© 2021 成都云创动力科技有限公司 蜀ICP备20006351号-1