Java学习day29-List集合

一、List和ArrayList

1.List代表一个元素有序、且可重复的集合,集合中的每个元素都有其对应的顺序索引。

2.List允许使用重复元素,可以通过索引来访问指定位置的集合元素。

3.List默认按元素的添加顺序设置元素的索引。

4.List集合里添加了一些根据索引来操作集合元素的方法。

Collection接口<—(继承)—List接口<—(实现)—ArrayList类

package day16;

import java.util.ArrayList;
import java.util.List;

public class Test5 {
    public static void main(String[] args){
        List<String> list = new ArrayList<String>();
        
        list.add("b");//第一个,索引下标就是0,List默认按元素的添加顺序设置元素的索引。
        list.add("d");//索引下标1
        list.add("c");//索引下标2
        list.add("a");//索引下标3
        list.add("d");//索引下标4,.List允许使用重复元素
        
        System.out.println(list);
        System.out.println(list.get(2));//List可以通过索引来访问指定位置的集合元素
        
        list.add(1,"f");//在指的索引下标的位置插入数据
        System.out.println(list);
        
        
        List<String> l = new ArrayList<String>();
        l.add("123");
        l.add("456");
        
        list.addAll(2, l);//在指的索引下标的位置插入集合
        
        System.out.println(list);
        
        
        System.out.println(list.indexOf("d"));//获取指定元素在集合中第一次出现的索引下标
        System.out.println(list.lastIndexOf("d"));//获取指定元素在集合中最后一次出现的索引下标
        
        
        list.remove(2);//根据指定的索引下标移除元素
        System.out.println(list);
        
        
        list.set(1, "ff");//根据指定索引下标修改值
        System.out.println(list);
        
        
        //根据下标的起始位置截取一段元素形成一个新的集合,截取的时候包含开始的索引,不包含结束时的索引
        List<String> sublist = list.subList(2, 4);//取索引下标在2<=&&<4的元素
        System.out.println(sublist);
        
        
        System.out.println(list.size());//集合的长度
    }
}

打印结果为:

二、ArrayList和Vector

ArraryList和Vector是List接口的两个典型实现,区别在于:

1.Vector是一个古老的集合,不常用,推荐使用ArrayList。

2.ArrayList是线程不安全的,而Vector是线程安全的,但即使为保证List集合线程安全,也不推荐使用Vector。

猜你喜欢

转载自www.cnblogs.com/su-peng/p/12568949.html