黑马程序员之Collection类

来源:互联网 发布:程序员述职报告范文 编辑:程序博客网 时间:2024/06/14 11:24

——- 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():集合中是否还有元素

0 0