ArrayList 属于List集合,可以包含重复元素,查询快,增删慢。创建对象后会创建一个初始容量为10的空列表,随着元素的添加而不断添加
LinkedList也属于List集合,增删速度很快,查询慢
Collection集合获取元素使用迭代器,List集合有自己特有的迭代器ListIterator,迭代器用法:
Iteratorit = al.iterator();
while(it.hasNext())
{
it.next();
}
ListIteratorli = al.listIterator();
while(li.hasNext())
{
li.next();
}
Set集合里元素不可重复,排列无序
HashSet中那当加入一个新元素就需要那这个元素与集合里的其他元素作比较,也就是符合equals里的判断方式,以保证集合里的成员唯一。
hashCode的作用也是保证Set集合里成员唯一,而且是先判断hashCode的值是否相等,如果相等在判断equals是否相等,如果都相等,那说明集合中已经存在相同成员了。
TreeSet保证元素唯一性的方法是排序比较,需要元素具有比较性(实现Comparator接口,覆盖comparaTo方法)或者指定比较器(实现Comparator接口覆盖compare方法)
Map集合,用于存放键值对,他没有迭代器不能用Set集合的迭代器获取元素,它有两个特有的获取元素的方法:
1. keySet方法,返回值是一个Set集合,将map中所有的键存入到Set集合。然后用Set集合的迭代方式取出所有的键,在根据get方法。获取每一个键对应的值。
2. entrySet:将map集合中的映射关系存入到了set集合中,而这个关系的数据类型就是:Map.Entry。然后用Map.Entry的getKey()和getValue()方法取出键和值
Map<String,String>map = new HashMap<String,String>();
Set<Map.Entry<String,String>>entrySet = map.entrySet();
Iterator<Map.Entry<String,String>>it = entrySet.iterator();
while(it.hasNext())
{
Map.Entry<String,String> me= it.next();
String key = me.getKey();
String value = me.getValue();
System.out.println(key+":"+value);
}
------- android培训、 java培训、期待与您交流! ---------- 详细请查看: http://edu.csdn.net/heima/