3、集合
1、集合的架构
interface Collection<E>: Java 集合的总接口。
Collection接口下面有两个重要的子接口: List 和Set
List: 接口 有序集合(也称为序列 ) 特征: 存放放的数据是有序的。可以重复的。
ArrayList: 实现类,重写List和COllection所有的抽象方法。并且还有自己独有的方法
LInkedList: 实现类,重写List和COllection所有的抽象方法。并且还有自己独有的方法
Set: 接口 特征: 存放放的数据是无序的。不可以重复的。
HashSet: 实现类,重写Set和COllection所有的抽象方法。并且还有自己独有的方法
TreeSet: 实现类,重写Set和COllection所有的抽象方法。并且还有自己独有的方法
2、Collection接口相关方法
增:
boolean add(E e);添加数据到集合中
boolean addAll(Collection<? extends E> c);将一个集合添加另外一个集合
删:
boolean remove(Object obj);//通过元素来删除集合中的元素
boolean removeAll(Collection<? extends E> c);删除两个集合中的交集。共同的元素
void clear(); 清空
查:
int size(); 获取集合中的元素的个数
boolean contains(Object o);判断集合中是否包含一个元素
boolean isEmpty();判断是否为空。为空就是true。不为空就是false
Object[] toArray();将集合转为数组。
iterator();获取迭代器
3、List集合
增:
void add(int index, E e);在指定的下标的位置添加指定的元素
boolean addAll(int index, Collection<? extends E> c);在指定的下标下面添加指定的集合
删:
Collection下面remove 是通过元素删除的
E remove(int index); 通过下标来删除元素,返回值 是被删除的那个元素
改:
E set(int index, E element);通过指定的索引下标替换某一个元素。返回值是被替换的元素
查:
E get(int index); 通过下标获取指定的元素
int indexOf(Object o);获取指定元素的下标
int lastIndexOf(Object o);获取指定元素的最后一次出现下标的
List<E> subList(int fromIndex, int toIndex); 截取一个集合
4、Set集合
Set: 无序的不可重复的
Set接口下面有两个实现类:
HashSet: 底层是依靠hash值进行存储的!!!如果hash值一样的就无法存到集合中