在学习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()方法的含义:找到并删除表头。所以在顺序输出时要注意输出范围的选择,否则有可能出现输出遗漏的问题。
在机考过程中此问题容易被发现,笔试时要尤为注意,可能出现错误!
今日推荐