美文网首页Java基础学习
JAVA基础——List集合

JAVA基础——List集合

作者: So_ProbuING | 来源:发表于2019-10-15 15:16 被阅读0次

    List集合

    List集合代表一个元素有序、可重复的集合、集合中每个元素都有其对应的顺序索引。List集合允许使用重复元素。

    Java8改进的List接口和ListIterator接口

    List作为Collection接口的子接口,可以使用Collection接口中的全部方法。

    • void add(int index,Object ele):将元素element插入到List集合的index处
    • boolean addAll(int index,Collection c):将集合c所包含的所有元素都插入到List集合的index处
    • Object get(int index):返回集合index索引处的元素
    • int indexOf(Object o):返回对象o在List集合中第一次出现的位置索引
    • Int lastIndexOf(Object o):返回对象o在List集合中最后一次出现的位置的索引
    • Object remove(int index):删除并返回index索引处的元素
    • Object set(int index,Object elem):将Index索引处的元素替换成elem对象,并返回被替换的旧元素
    • List subList(int fromIndex,int toIndex):返回从索引fromIndex(包含)到toIndex(不包含)处所有集合元素组成的自己和

    Java8还为List借口添加了默认的方法

    • void replaceAll(UnaryOperator operator) 根据operator指定的计算规则重新设置List集合的所有元素
    • void sorit(Comparator c) 根据Comparator参数对List集合的元素排序

    List额外提供了ListIterator()方法,该方法返回一个ListIterator对象,ListIterator接口继承了Iterator接口,提供了专门操作List的方法。

    • Boolean hasPrevious():返回该迭代器关联的集合是否还有上一个元素
    • Object previous():返回该迭代器的上一个元素
    • void add(Object o):在指定位置插入一个元素

    ListIterator增加了向前迭代的功能,普通的Iterator只能向后迭代,ListIterator可以通过add()方法向List集合中添加元素(Iterator只能删除元素)

    String[] strs = {"a", "b", "c", "d", "e", "f"};
            List<String> strList = Arrays.asList(strs);
            //获取ListIterator
            ListIterator<String> listItera = strList.listIterator();
            //反向迭代list并向集合最后添加g字符
            while (listItera.hasPrevious()) {
                String previous = listItera.previous();
                System.out.println(previous);
            }
    

    固定长度的List

    Arrays工具类提供了asList(Object... a)方法,该方法可以把一个数组或指定个数的对象转换成一个List集合。这个List集合既不是ArrayList实现类的实例,也不是Vector实现类的实例。而是Arrays的内部类ArrayList的实例。

    Arrays.ArrayList是一个固定长度的List集合,程序只能遍历访问该集合里的元素,不可增加、删除该集合里的元素

    相关文章

      网友评论

        本文标题:JAVA基础——List集合

        本文链接:https://www.haomeiwen.com/subject/ntesmctx.html