在学习JAVA类集一章中关于LinkedList子类中.poll()方法易错点的分析心得

例如如下代码:

package Test; import java.util.LinkedList; public class LinkedListDemo01 {
public static void main(String[] args) { LinkedList<String> link=new
LinkedList<String>(); link.add("A"); link.add("B"); link.add("B");
link.add("C"); link.add("C"); link.add("C"); link.add("C");
System.out.print("初始化:"+link); link.addFirst("X"); link.addLast("Y");
System.out.print("初始化之后:"+link); System.out.print("找表头:"+link.poll());
System.out.print("按顺序输出:"); for(int i=0;i<=link.size()+1;i++){
System.out.print(link.poll()+"、"); } } }
最后“按顺序输出”的结果是什么呢?

换成:

package Test; import java.util.LinkedList; public class LinkedListDemo01 {
public static void main(String[] args) { LinkedList<String> link=new
LinkedList<String>(); link.add("A"); link.add("B"); link.add("B");
link.add("C"); link.add("C"); System.out.print("初始化:"+link);
link.addFirst("X"); link.addLast("Y"); System.out.print("初始化之后:"+link);
System.out.print("找表头:"+link.poll()); System.out.print("按顺序输出:"); for(int
i=0;i<=link.size()+1;i++){ System.out.print(link.poll()+"、"); } } }
最后按“顺序输出”的结果是又什么呢?

换成:

package Test; import java.util.LinkedList; public class LinkedListDemo01 {
public static void main(String[] args) { LinkedList<String> link=new
LinkedList<String>(); link.add("A"); link.add("B"); link.add("B");
link.add("C"); link.add("C"); link.add("C"); link.add("C"); link.add("C");
System.out.print("初始化:"+link); link.addFirst("X"); link.addLast("Y");
System.out.print("初始化之后:"+link); System.out.print("找表头:"+link.poll());
System.out.print("按顺序输出:"); for(int i=0;i<=link.size()+1;i++){
System.out.print(link.poll()+"、"); } } }
最后按“顺序输出”的结果是又什么呢?

其实这里应该注意.poll()方法的含义:找到并删除表头。所以在顺序输出时要注意输出范围的选择,否则有可能出现输出遗漏的问题。

在机考过程中此问题容易被发现,笔试时要尤为注意,可能出现错误!

技术
©2019-2020 Toolsou All rights reserved,
基于神经网络的车辆牌照字符识别技术Java基础(三) String深度解析 dedecms网站被黑 劫持到其他网站如何解决精准手机号抓取,运营商大数据利用梆梆加固逻辑漏洞取巧脱壳QT 删除目录及文件Java小明A+B苹果不送充填器耳机真为环保?可能还是为了赚钱吧在Pytorch上使用summaryC#中字典的排序方法