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

    接口List

    常用的实现类:ArrayList和LinkedList

    ArrayList:底层是一个对象数组(Object[])

    特点:增删慢,查找快。是一个有序的集合,容量默认是10,元素超过会增加到原来1.5倍。

    ArrayList特有方法: ensureCapacity(int minCapacity);    //增加容量

              trimToSize();     //调整集合容量刚好符合元素个数

    LinkedList: 底层是一个链表形式实现。

    特点:增删快,查找慢。在内存中是无序的(链表形式),在打印出来是有序的。

    特有方法:

    添加:  addFirst();  把元素添加到集合的第一个

           addLast();  把元素添加到集合的最后一个

    获取:  getFirst();   获取集合的第一个元素

         getLast();   获取集合的最后一个元素

    删除:  removeFirst();  移除集合的第一个元素(并且会返回当前元素)

           removeLast();  移除集合的最后一个元素 (并且会返回当前元素)

    如果集合中没有元素,获取和删除元素时会出现:NoSuchElementException异常--->没有找到元素的异常

    LinkedList 数据结构:包含堆栈和队列结构;

    1.栈(1.6):先进后出

      push();  //往栈中退出一个元素

      pop();   //取出最后一个推入的元素

    (LinkedList使用push后变成栈结构, push进去的被pop取完后,就去pop索引0开始的元素)

    2.队列(双端队列1.5):先进先出

      offer():   //添加元素到最后一个

      poll();     //取出最前的

    返回一个逆序的迭代器对象(用于逆序遍历)

      descendingIterator()    

  • 相关阅读:
    RegExp正则表达式心得 1 -分解MIME格式
    转载:ASP.Net性能优化(作者:刘鉴平)
    asp.Net中的多文件上传[载]
    我做的程序
    C#代码执行者1.0
    wordwrap,wordbreak,whitespace,textoverflow的区别和用法[转]
    SQL里面Case的用法
    richTextBox中插入图片的方法
    关于CodeDom的测试
    关系数据库的索引技术
  • 原文地址:https://www.cnblogs.com/z-jun/p/6123164.html
Copyright © 2011-2022 走看看