zoukankan      html  css  js  c++  java
  • List集合

    特点:

    a) 有序(存储和取出的元素顺序一致),可重复

    b) 特有功能

     1. 添加功能

      void add(int index,Object element)在指定位置添加元素(原索引处的元素后延)

     2. 获取功能

      Object get(int index)获取指定位置的元素

     3. 列表迭代器

      (1). ListIterator listIterator() List集合特有的迭代器

      (2). Iterator迭代器的子类,所以其可以用Iterator中的boolean hasNext()、Object next()方法

      (3). 特有的方法:

       a) Object previous ()返回此处位置的前一个的元素,并移动到前一个位置。

       b) boolean hasPrevious()判断此处的前一个位置是否有元素

       c) 逆向遍历必须先正向遍历使指针指到后面位置才能使用(使用意义不大)

      4. 迭代器遍历元素时不能直接通过集合修改元素,怎么办?

       a) 迭代器修改元素

        1. List迭代器有修改方法,Collection中的迭代器没有

        2. 通过迭代器中add(object obj)方法添加,跟在刚才迭代元素后面

       b) 通过集合遍历元素,并用集合修改元素(for循环遍历):通过集合中add(object obj)方法添加,跟在集合最后面

      5. 迭代器遍历实例实例在下面给出

      (1). 删除功能

       Object remove(int index)根据索引删除指定的元素,并返回删除的元素

      (2). 修改功能、

        Object set(int index,Object element)根据索引修改元素,返回被修改的元素

      (3). 数组转成集合

        ① public static List asList(T… a),返回类型为List类型

        ②  a为集合,此处的… 代表可变参数,也就是a的数组元素个数可变

        ③  此方法是Arrays类中的静态方法

        ④   数组转变为集合,实质还是数组需要保证长度不变,所以不支持增删集合元素,可以修改元素

    c) List子类的特点:

     1. ArrayList:

      (1). 底层数据结构是数组,查询快、增删慢

      (2). 线程不安全,效率高

     2. Vector:

      (1). 底层数据结构是数组,查询快,增删慢

      (2). 线程安全,效率底

     3. LinkedList:

      (1). 底层数据结构是链表,查询慢,增删快

      (2) 线程不安全,效率高

  • 相关阅读:
    Windows7记事本的五大秘密
    深刻认识clientX,offsetX,screenX
    win7几个小技巧
    怎样开启Win7快速启动栏
    offsetLeft,Left,clientLeft的区别
    更改Windows7下图标查看方式
    让IE6、IE7、IE8支持CSS3的圆角、阴影样式
    windows7桌面右下角显示不止一个时间以及显示日期
    Win7开关机关闭Update方法
    jquery outerHeight方法 outerWidth方法
  • 原文地址:https://www.cnblogs.com/yhcTACK/p/15426888.html
Copyright © 2011-2022 走看看