Java进阶知识查漏补缺14
List集合:
package com.cjf.List; import org.junit.Test; import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * Created with IntelliJ IDEA. * Description: * Author: Everything * Date: 2020-07-06 * Time: 11:19 */ // /----Collection接口:单列集合,用来存储一个一个的对象 // /----List接口:存储有序的、可重复的数据。-->“动态”数组, 替换原有的数组 // /----ArrayList、LinkedList、Vector:三个类都是实现了List接口,存储数据的特点相同:存储有序的、可重复的数据 //ArrayList:作为list接口的主要实现类,线程不安全,效率高,底层使用Object数组 //LinkedList:底层使用双向链表,频繁的增删操作 //Vector:古老实现类,线程安全,效率低 //List接口常用方法之ArrayList public class ListTest { @Test public void test(){ ArrayList list = new ArrayList(); list.add("AA"); list.add("BB"); list.add("CC"); list.add("DD"); list.add("EE"); //1.void add(int index,Object ele):在index位置插入ele元素 list.add(1,"INSERT"); System.out.println(list); //2.addAll:添加集合 List list1 = Arrays.asList(1, 2, 3); list.addAll(list1); System.out.println(list); //3.object get(int index):获取指定index位置的元素 System.out.println(list.get(0)); //4.indexOf(),返回首次出现的索引值 int i = list.indexOf("BB"); System.out.println(i); //5.lastIndexOf():最后一次出现的索引值 int j = list.lastIndexOf("BB"); System.out.println(j); //6.remove():移除指定索引的元素 list.remove(1); System.out.println(list); //7.set(i,aa):修改指定索引的元素 list.set(0,"aa"); System.out.println(list); //8.subList(i,j):返回从i到j索引的左开右闭区间 List list2 = list.subList(0,4); System.out.println(list2); } }