Collection集合概述
Collcection接口是java集合中的顶级接口,其和其它的java集合的关系,可见另一篇博文
https://blog.csdn.net/qq_37296285/article/details/94981052
Collection集合特点
- 其中元素非键值对类型,所有元素的类型要保持一致
- Collection是一个顶级接口,其中的方法,其实现类必须要加以实现,是所有Collection系集合的共同方法
Collection中的增加元素方法
方法 | 解释说明 |
---|
add(E e) | 添加的是单个元素,向Collection集合中添加同类型值a |
addAll(Collection<? extends E> e) | 添加的是集合,将一个集合中的元素依次添加到另一个集合中去,还是要类型一致或者是其子类 |
Collection集合中的删除元素方法
方法 | 解释说明 |
---|
boolean remove(Object obj) | 从集合中删除第一个指定的元素 即若集合中有多个相同的需要删除的元素 ,只会删除掉第一个 |
boolean remove(Collection<?> e) | 从原集合中删除参数部分指定集合中包含的所有元素,即只要和指定集合中的元素一致,就要删除,而不是仅仅删除第一个,只要有元素被删除就返回true |
boolean removeIf(Predicate<? super E> filter) | jdk1.8之后新增的办法,以前没有,Predicate是一个接口,其中仅有一个方法boolean test(T t)。将集合中的每个元素依次代入该方法,如果结果为true满足过滤条件,则删除该元素 |
clear() | 清空集合,将集合中所有元素进行删除 |
list.removeIf(new Predicate<Integer>(){
@Override
public boolean test(Integer t){
return t%2==0;
}
} )
list.removeIf(ele->ele%2==0)
Collection集合中的查方法
方法 | 解释说明 |
---|
contains () | 判断集合中是否包含指定元素 |
containsAll() | 判断参数集合中的元素在原集合中是否都存在 |
equals() | 从object类继承下来的方法,判断两个集合中得元素是否一致 |
isEmpty() | 判断集合是否为空 |
int size() | 获取集合中元素个数 |
Collection集合中的修改方法
方法 | 解释说明 |
---|
T[] toArray(T[] a) | 将集合中的元素按照T的类型转成数组形式,如果不给T类型,则认为是转成Object类型 |
list.toArray(new Integer[0])
一些注意事项
注:
- Collection集合中没有根据下标获取元素的概念,原因在于Collection集合是List集合和Set集合的父类,而Set集合是排重的,是没有下标概念的,所以Collection集合不能依靠下标来循环元素
- 集合中的元素不可以使用增强for循环对其进行修改,一旦修改会报错。
for(Integer i:list){不可做修改}