zoukankan      html  css  js  c++  java
  • Vector和LinkedList

    /*
    List的三个子类对象:
    1、ArrayList:底层的数据结构为数据,查询速度快,增改慢(JDK出现)。线程不同步。长度为10,按50%增加,
    			  原理:把旧元素赋值到新的集合中,然后再后面添加
    2、LinkedList:底层使用的是链表数据结构,增改快,查询慢
    
    3、Vector:底层是数据结构,增改查都慢,已被ArrayList替换(JDK1.0出现)。线程同步。长度默认为10,超过就自增20,按100%增加
    详解:
    Vector:
    枚举Enumeration是Vector的专有取出方式。与迭代器相同
    
    LinkedList:类似链表操作。
    1、addFirst()
    2、addLast();
    3、removeFirst();			//获取或删除元素,如果集合为空,会抛出NoSuchElementException
    4、removeLast()
    5、E getFirst();		//只删除,不取值
    6、E removeFirst();		//删除且取值
    
    JDK1.6出现替代,为空会为null,不抛出异常。
    1、peekFirst() 获取但不移除此列表的第一个元素;如果此列表为空,则返回 null。
    2、peekLast() 获取但不移除此列表的最后一个元素;如果此列表为空,则返回 null。
    3、poll()  获取并移除此列表的头(第一个元素)
    4、pollFirst()  获取并移除此列表的第一个元素;如果此列表为空,则返回 null。
    5、pollLast() 获取并移除此列表的最后一个元素;如果此列表为空,则返回 null。
    */
    import java.util.*;
    class  VectorDemo
    {
    	public static void main(String[] args) 
    	{
    		DoLinkedList();
    	}
    
    	public static void DoVector()
    	{
    		Vector vec = new Vector();
    		vec.add("java1");
    		vec.add("ava2");
    		Enumeration en = vec.elements();
    		while(en.hasMoreElements())
    		{
    			System.out.print(en.nextElement());
    		}
    	}
    
    	public static void DoLinkedList()
    	{
    		LinkedList plink = new LinkedList();
    		plink.add("java1");
    		plink.add("java2");
    		plink.add("java3");
    		plink.add("java4");
    		System.out.print("原数据:");
    		System.out.println(plink);
    
    		while(!plink.isEmpty())
    		{
    			System.out.print(plink.removeFirst());			//由于removeFirst返回删除要素,所以可以这样
    		}
    	}
    }
    

  • 相关阅读:
    Mac安装LightGBM
    用于视频超分辨率的可变形三维卷积
    ORB-SLAM3 单目地图初始化(终结篇)
    重用地图的单目视觉惯导SLAM系统
    2020,我的秋招感悟!
    超详细解读ORB-SLAM3单目初始化(下篇)
    基于改进的点对特征的6D位姿估计
    深入研究自监督单目深度估计:Monodepth2
    ORB-SLAM3 细读单目初始化过程(上)
    基于视觉和惯性传感器的移动机器人手遥操作系统
  • 原文地址:https://www.cnblogs.com/dengshiwei/p/4258505.html
Copyright © 2011-2022 走看看