Collection中list集合的应用常见的方法

Collection中list集合的应用常见的方法


  集合 : 用存放对象的容器(集合)
     Collection : 跟接口 : 单列集合
          ---> List :有序的 ,元素是可以重复的。
          ---> Set : 无序的 ,元素是不可以重复的。
         
    Collectionz红常用的方法:
       增
         add();添加一个元素
         addAll();A.addAll(B) 将B中的元素添加到A中。
       删
         remove(Object o); 移除指定的对象。
         removeAll(Collection c);A.removeAll(B); 删除A中含有B的元素。
         clear(); 清空所有的元素  
        判断:
           contains(Object); 判断集合中是否含有某一个对象。  实际上还是以equals来比较的对象。
           如果比较的自定义的对象 这个时候可能需要重写equals和hashCode方法。
           containsAll(Collection c); A.containsAll(B);判断A中是否包含有B集合。
           isEmpty() : 判断集合是否为空。
      
       将集合转为数组 :
           toArray(); 数组是一个对象数组。遍历集合的方法。
          
       集合比数组的优势:
             1.集合可以存任意类型的对象,长度的可变的
             2.数组只能同一种类型变量,长度是固定的。
             3.集合中只能存对象
            
       List集合 : 接口  提供公有的方法
           特有的方法:
              1.list中的特有方法都是通过下标来操作元素。
           查找 :
              add(int index, Object o) ; 添加元素到指定的位置。
          
             
              get(int index);获取集合中指定位置的元素。
              set(int index,Object o); 用来修改集合中指定位置元素的值。
             
      
       迭代器:
          作用:操作集合中元素。 可以增删改查
         
       根迭代器 : Iterator  接口  集中获取迭代器 :通过集合中方法来获取。
           collection 集合中获取迭代器:iterator();
          
           迭代器中的方法:
              hasNext(); 判断当前指针指向的位置是否有元素
              next(); 获取当前指针指向的元素,并且指针下移一位
              remove(); 移除最后操作时指针指向的元素。
             
            ListIterator :
                特有方法:
                   hasProvious();判断当前指针指向的上一个位置是否存在元素。
                   provious(); 获取上一个元素。
                   proviousIndex();获取上一个元素所在的位置。
                  
                   add(); 在当前指针指向的位置添加一个元素
                   set(); 修改当前指针指向的元素。
                   注意点:
                     1.add 和 set 不能过同时使用。
                     2.如果你是用了迭代器来操作元素,那么就不用再用集合来操作元素了。
                  
             
            ArrayList : 底层是维护一个Object[]o数组,默认容量是10 ,如果容量不够增加到原来的1.5倍。
                          优点 : 查找快 ,增删慢。
                trimToSize();调整集合的容量和数据保持一致。
                ensureCapacity(int minCapacity)  自定容量。
               
            LinkedList : 链接列表实现, 特点:添加元素比较快,查找慢。