一、集合概述
二、Collection接口
2.1 add方法,向集合中添加元素
2.2 方法
size():获取集合元素个数
clear(): 清空集合元素
contains(o):判断集合中是否包含某元素,底层调用equals方法,存放在集合中的元素,建议重写equals方法
remove(o):删除指定元素,底层也调用equals方法
isEmpty():判断集合是否为空
iterator():返回一个迭代器对象
三、List
3.1 List特有方法
3.2 ArrayList
1.ArrayList集合初始化容量是10;
2.底层是Object类型数组
3.不是线程安全的集合
package com.collection.list;
import java.util.ArrayList;
import java.util.List;
public class Demo01 {
public static void main(String[] args) {
ArrayList<String> strings = new ArrayList<>();
strings.add("b");//第一个,索引为0
strings.add("a");
strings.add("c");
strings.add("a");//元素可以重复
System.out.println(strings);//[b, a, c, a]
System.out.println(strings.get(0));//b
strings.add(1,"e");//在指定索引位置插入值
System.out.println(strings);//[b, e, a, c, a]
ArrayList<String> strings2 = new ArrayList<>();
strings2.add("124");
strings2.add("345");
strings.addAll(1,strings2);//在指定索引位置插入集合,插入集合类型必须与被插入集合相同
System.out.println(strings); //[b, 124, 345, e, a, c, a]
System.out.println(strings.indexOf("a"));//获取指定元素在集合中第一次出现时的索引
System.out.println(strings.lastIndexOf("a"));//获取指定元素在集合中最后一次出现时的索引
strings.remove(2);//根据索引移除元素
System.out.println(strings);
strings.remove("124");//移除指定元素
System.out.println(strings);
strings.set(1,"dddd");//根据索引修改元素
System.out.println(strings);
List<String> list = strings.subList(1,3);//切片
System.out.println(list);
System.out.println(strings.size());//集合长度
}
}
3.3 LinkedList(底层双向链表)
单向链表
双向链表
3.4 Vector