——- android培训、java培训、期待与您交流! ———-
List类
ArrayList:底层的数据结构使用的是数组结构。特点:查询速度很快。但是增删稍慢。线程不同步。
LinkedList:底层使用的链表数据结构。特点:增删速度很快,查询稍慢。线程不同步。
Vector:底层是数组数据结构。线程同步。被ArrayList替代了。因为效率低。
增
add(index ,element); 添加元素,从指定的index添加进去
addAll(index ,Collection); 添加部分元素,从指定的index添加,部分元素和传入的Collection一致
删
remove(index); 删除指定角标的元素。
改
set(index ,element); 修改元素,从指定的index元素
查
get(index); 返回列表中指定位置的元素
subList(int fromIndex ,int toIndex); 返回列表中从fromIndex (包含)到toIndex(不包含)之间的元素
indexOf(object):返回列别中指定元素的索引,如果不包含,返回—1;
static void method()
{
//创建集合
ArrayList al = new ArrayList();
//添加集合元素
al.add("shu1"); //addAll();
al.add("shu2");
al.add("shu3");
//获取个数,集合长度
sop("原来集合个数"+al.size());
sop("原来集合"+al);
//删除元素
al.remove("shu2");
sop("删除shu2后的集合"+al);
//判断元素
sop("判断是否包含shu3"+al.contains("shu3"));//containsAll
sop("集合是否为空:"+al.isEmpty());
//清空元素
al.clear();
sop("进行clear后集合是否为空:"+al.isEmpty());
}
Set类
HashSet:底层数据结构是哈希表,线程是不同步的。
TreeSet:对Set集合中的元素进行指定顺序的排序,不同步,底层的数据结果是二叉树
Set集合的功能和Collection是一致的
1添加:
Add(Object):添加一个元素,如al.add(“元素1”);
addAll(Collection)::添加一个集合中的所有元素。
2获取:
int Size ( ):获取集长度,即集合中有几个元素
3删除:
clear():清空集合中的所以元素
remove(Object):删除指定的元素,可以用与获取,但获取完后会删除,集合的长度也会改变。
removeAll(Collection):删除部分元素,部分元素和传入的Collection一致。
4判断:
boolean contains(object):集合中是否包含指定元素
boolean containsAll(Collection):集合中是否包含多个元素
boolean isEmpty():集合中是否还有元素