public void add(int index, E element)
:
将指定的元素,添加到该集合中的指定位置上。
public E get(int index)
:
返回集合中指定位置的元素。
public E remove(int index)
:
移除列表中指定位置的元素
,
返回的是被移除的元素。
public E set(int index, E element)
:
用指定元素替换集合中指定位置的元素
,
返回值是更新前的元素
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("tutu");
list.add("xiaomei");
System.out.println(list);
list.add(1,"haha");
System.out.println(list);
list.remove(1);
System.out.println(list.get(1));
System.out.println(list.set(1,"hello"));
System.out.println(list);
}
[tutu, xiaomei]
[tutu, haha, xiaomei]//将haha加入index=1,但是不会覆盖之前 1 的元素
xiaomei
xiaomei//返回值是更新前的元素
[tutu, hello]
Arraylist
与
LinkedList
区别
ArrayList 基于object是⼀个数组队列,相当于动态数组。它由数组实现,随机访问效率⾼,随机插⼊、随机删除
效率低。
LinkedList 是⼀个基于双向链表。它也可以被当作堆栈、队列或双端队列进⾏操作。LinkedList随机访问
效率低,但随机插⼊、随机删除效率⾼。
Vector 是⽮量队列,和ArrayList⼀样,它也是⼀个动态数组,由数组实现。但是ArrayList是⾮线程
安全的,⽽Vector是线程安全的。
Stack 是栈,它继承于Vector。它的特性是:先进后出(FILO, First In Last Out)。
LinkedList
集合 :方便元素添加删除的集合,不利于查找。