zoukankan      html  css  js  c++  java
  • Java中的List(转)

      List包括List接口以及List接口的所有实现类。因为List接口实现了Collection接口,所以List接口拥有Collection接口提供的所有常用方法,又因为List是列表类型,所以List接口还提供了一些适合自身的常用方法,如下:

      add(int index,Object obj):用来向集合的指定索引位置添加对象,其它对象的索引位置相对后移以为,索引位置从0开始

      addAll(int index,Collection coll):用来向集合的指定索引位置添加指定集合中的所有对象

      remove(int index):用来清除集合中指定索引位置的对象

      set(int index, Object obj):用来将集合中指定索引位置的对象修改为指定对象

      get(int index):用来获得指定索引位置的对象

      indexOf(Object obj):用来获得指定对象的索引位置。当存在多个时,返回第一个的索引位置;当不存在时,返回-1。

      lastIndexOf(Object obj):用来获得指定对象的索引位置。当存在多个时,返回最后一个的索引位置;当不存在时,返回-1。

      listIterator():用来获得一个包含所有对象的ListIterator迭代器。

      listIterator(int index):用来获得一个包含指定索引位置到最后的ListIterator迭代器。

      subList(int fromIndex,int toIndex):通过截取从起始索引位置fromIndex(包含)到终止索引位置toIndex(不包含)的对象,重新生成一个  List集合并返回。

      

      以上可以看出,List接口提供的适合于自身的常用方法均与索引有关,这是因为List集合为列表类型,以线性方式存储对象,可以通过对象的索引操作对象。

      List接口的常用实现类有ArrayList和LinkedList,在使用List集合时,通常情况下声明为List类型,实例化时根据实际情况的需要,实例化为ArrayList或LinkedList,例如:

      List<String> l = new ArrayList<String>();// 利用ArrayList类实例化List集合

      List<String> l2 = new LinkedList<String>();// 利用LinkedList类实例化List集合

    1.add(int index, Object obj)方法和set(int index, Object obj)方法的区别
    在使用List集合时需要注意区分add(int index, Object obj)方法和set(int index, Object obj)方法,前者是向指定索引位置添加对象,而后者是修改指定索引位置的对象。

    2.List集合可以通过索引位置访问对象,还可以通过for循环遍历List集合:

    import java.util.List;
    import java.util.LinkedList;
    import java.util.Iterator;
    public class Demo341{
        public static void main(String[] args){
            List<String> list=new LinkedList<String>();
            list.add("a");
            list.add("b");
            list.add("c");
            Iterator<String> it=list.iterator();
            while(it.hasNext()){
                System.out.print(it.next());
            }
        }
    }//~output:abc
    import java.util.List;
    import java.util.LinkedList;
    import java.util.Iterator;
    public class Demo342{
        public static void main(String[] args){
            List<String> list=new LinkedList<String>();
            list.add("a");
            list.add("b");
            list.add("c");
            for(int i=0;i<list.size();i++){
                System.out.print(list.get(i));//利用get(int index)方法获得指定索引位置的对象
            }
        }
    }//~output:abc

    3.indexOf(Object obj)方法和lastIndexOf(Object obj)方法的区别
    在使用List集合时需要注意区分 indexOf(Object obj)方法和lastIndexOf(Object obj)方法,前者是获得指定对象的最小的索引位置,而后者是获得指定对象的最大的索引位置,前提条件是指定的对象在List集合中具有重复的对象,否则 如果在List集合中有且仅有一个指定的对象,则通过这两个方法获得的索引位置是相同的

    4.subList(int fromIndex, int toIndex)方法
    在使用subList(int fromIndex, int toIndex)方法截取现有List集合中的部分对象生成新的List集合时,需要注意的是,新生成的集合中包含起始索引位置代表的对象,但是不包含终止索引位置代表的对象

  • 相关阅读:
    DataGrid 应用合集
    [转]UBB C#完全版
    IE 7中的快捷键
    DataGrid 单击变色,鼠标经过变色 部分代码
    17种正则表达式
    单无格内强制换行
    图片上传,并自动生成缩略图!
    layout_weight学习心得
    android 手势
    java陷进一
  • 原文地址:https://www.cnblogs.com/dazuihou/p/3581232.html
Copyright © 2011-2022 走看看