import java.util.Iterator;
import java.util.LinkedList;
public class LinkedDemo1 {
/*linkedlist他内部封装的是双向链表数据结构
每个结点是一个node对象,Node对象中封装的是要添加的元素
还有一个指向上一个Node对象的应用和指向下一个Node对象的引用*/
/*不同的容器有不同的数据结构,不同的数据结果操作起来性能是不一样的
* 链表数据结构,做插入,删除的效率高,但是查询效率比较低;
* 数组结构;他做查询的时候效率高;因为可以通过下表直接找到元素
* 但是插入和删除效率比较低,因为要做移位操作;
* */
public static void main(String[] args) {
LinkedList<String> linkedList = new LinkedList<String>();
linkedList.add("zhangsan");
linkedList.add("lisi");
linkedList.add("wangwu");
linkedList.add("zhaoliu");
linkedList.add("rose");
linkedList.add("tom");
linkedList.add("jerry");
linkedList.addFirst("zhang");
linkedList.addLast("wang");
//输出方法一使用while输出
Iterator<String > it=linkedList.iterator();
while (it.hasNext()) {
String name = (String) it.next();
System.out.println(name);
System.out.println("<------分割线1--------->");
//使用增强for循环输出
for (String string : linkedList) {
System.out.println(string);
}
System.out.println("<------分割线2--------->");
//使用for循环输出
for(Iterator<String > it2=linkedList.iterator();it2.hasNext();){
String string2 = (String) it.next();
System.out.println(string2);
}
System.out.println("<------分割线3--------->");
System.out.println(linkedList.removeFirst());//移除第一个
System.out.println(linkedList.size());//长度
System.out.println(linkedList.pollFirst());//获取并移除此列表的第一个元素
System.out.println("<------分割线3--------->");
linkedList.clear();//清空元素
}
}
}
LinkedList
最新推荐文章于 2020-07-15 10:45:48 发布