import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;
import java.util.ArrayList;
import java.util.List;
public class TestDemo {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
//boolean add(E e) 尾插 e
list.add("hello");
//void add(int index, E element) 将 e 插入到 index 位置
list.add(1, "abc");
System.out.println(list);
List<String> list1 = new ArrayList<>();
list.add("java");
list.add("bit");
//1.必须实现了Collection接口
//2.类型为E的子类或者
//boolean addAll(Collection<? extends E> c) 尾插 c 中的元素
list.addAll(list1);
System.out.println(list);
//E remove(int index) 删除 index 位置元素
String ret = list.remove(0);
System.out.println(ret);
//boolean remove(Object o) 删除遇到的第一个 o
list.remove("bit");
System.out.println(list);
System.out.println("==========get===========");
//E get(int index) 获取下标 index 位置元素
ret = list.get(0);
System.out.println(ret);
System.out.println("==========set===========");
//E set(int index, E element) 将下标 index 位置元素设置为 element
//相当于更新 已有位置
list.set(0, "haha");
System.out.println(list);
//boolean contains(Object o) 判断 o 是否在线性表中
System.out.println(list.contains("haha"));
//int indexOf(Object o) 返回第一个 o 所在下标
System.out.println((list.indexOf("haha")));
//int lastIndexOf(Object o) 返回最后一个 o 的下标
list.add("haha");
//从后往前查找第一个haha出现的位置
System.out.println(list.lastIndexOf("haha"));
System.out.println("======subList========");
//List<E> subList(int fromIndex, int toIndex) 截取部分 list
//相当于浅拷贝 两个引用同时指向一个对象 修改一个 另一个也被修改了
List<String> retList = list.subList(0,2);
System.out.println(retList);//[haha, java]
retList.set(0,"gaobo");
System.out.println(retList);//[gaobo, java]
System.out.println(list);//[gaobo, java, haha]
list.clear();
System.out.println(list);
}
}
List(线性表)常用方法
最新推荐文章于 2024-04-28 00:37:53 发布