linkedList 和ArrayList性能链接
import java.util.LinkedList;
import java.util.ListIterator;
public class Mytext {
public static void main(String[] args) {
LinkedList<String> list = new LinkedList<String>();
list.add("one");
list.add("tow");
list.add("three");
ListIterator<String> it = list.listIterator();
it.next();// 指向了one 和two中间
int i = it.nextIndex();// 下一个使用next()返回对像元素的索引
System.out.println(list.get(i) + i + it.previousIndex());// 下一次使用previous();返回对像元素的索引
}
}
linkedList 合并与删除
import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;
/*
* 合并两链表,并删除另一个链表的间隔一个元素的节点P568出自java核心技术I卷
*/
public class Mytext {
static List<String> list = null;
static List<String> list2 = null;
public static void main(String[] args) {
list = new LinkedList<String>();
list.add("wpwp");
list.add("wowo");
list.add("wiwi");
list2 = new LinkedList<String>();
list2.add("xxxx");
list2.add("zzzz");
list2.add("cccc");
ListIterator<String> it = list.listIterator();
ListIterator<String> it2 = list2.listIterator();
while (it2.hasNext()) {
if (it.hasNext()) {
it.next();
} else
it.add(it2.next());
}
System.out.println(list);
System.out.println(it.nextIndex());
it = list.listIterator();
// 第一次调用迭代器时,指针会指向链表末尾,这是在迭代时要指针归位
System.out.println(it.nextIndex());
while (it.hasNext()) {
it.next();
if (it.hasNext()) {
it.next();
it.remove();
}
}
System.out.println(list);
}
}