代码如下,为什么it.remove()在new it1前运行会报错
package opLinkedList;
import java.util.LinkedList;
import java.util.Iterator;
public class file1 {
public void add()
{
LinkedList List=new LinkedList();//创建一个链表类对象List
List.add("王鹏");
List.add("王浩");
List.add("王杰");
List.add("张杰");
List.add("李杰");
List.add("孙文杰");
List.add("赵杰");
//通过迭代器遍历输出初始数据
Iterator it=List.iterator();//创建一个迭代器对象it
System.out.println("学生姓名如下:");
while(it.hasNext())
{
System.out.println(it.next());
}
//问题在这里
//it.remove();//删除末尾的一个元素
Iterator it1=List.iterator();//创建一个迭代器对象it1
it.remove();//删除末尾的一个元素
System.out.println();//换行
System.out.println("删除一名学生后学生姓名如下:");
for(int i=0;i<List.size();i++)
{
System.out.println(it1.next());
}
}
public static void main(String[] args)
{
file1 f=new file1();
f.add();
}
}
报错截图:remove()方法放在new it1上面
正确运行截图:remove()方法放在new it1下面