Java 双向链表的迭代器,怎么添加元素?
发布网友
发布时间:2022-04-26 18:37
我来回答
共3个回答
热心网友
时间:2022-05-04 14:56
可以用LinkedList代替你的AdditiveList
LinkedList<String> linklist=new LinkedList<String>();
String [] strs={"1","2","3","4"};
for (String string : strs) {
linklist.add(string);
}
System.out.println("链表的第一个元素是 : " + linklist.getFirst());
System.out.println("链表最后一个元素是 : " + linklist.getLast());
System.out.println("链表的长度 : " + linklist.size());
//然后你需要动态改变链表中的元素这时可以用ListIterator<E>迭代器来操作链表
ListIterator<String> itr=linklist.listIterator();
while (itr.hasNext()) {
itr.next();//先正序将游标调至结尾
}
while (itr.hasPrevious()) {
String string = (String) itr.previous();//逆序遍历链表
System.out.println(string);
if("2".equals(string)){//在指定位置前插入元素
itr.add("0");//这里就是你需要插入的元素
itr.add("1");
}
}
System.out.println(linklist.toString());追问我想知道的是 hasPrevious()的代码 感谢
热心网友
时间:2022-05-04 16:14
迭代器只是个接口,里面定义遍历元素的方法而已,没有什么添加元素的方法,而且遍历元素的方法你要自己实现。
你要实现添加元素的方法,首先你得把你双向链表的结构先搭出来,别基础都没弄好就想飞了。追问全部写完了 就是添加的位置不对 代码太长贴不上来
追答调试下,一步一步走,看看为什么添加错了位置