黑马程序员技术交流社区
标题: 集合小结 [打印本页]
作者: 张丽 时间: 2012-10-8 08:44
标题: 集合小结
集合体系组织的根接口是Collection,它是API1.2以后版本出现的,最原始的集合容器是Vector,它是API1.0版本的。取集合元素用的是枚举:Enumeration,1、2以后版本出现了集合体系,并把Vector编制到里面,Collection下的集合还有List和Set两大体系。
List是链表结构,最大特点是有索引。可以对元素进行增删改查,去元素的方法是使用迭代器,是用集合.iterator()方法来取的。它体系下面有两个子类,一个是LinkedList,一个是ArrayList,LinkedList是链表结构,也有索引,它增删快,改查慢,并且是不同步的。LinkedList取元素的方法是用Linkiterator,因为该方法可以在迭代的时候对集合元素进行增删。ArrayList改查快,增删慢,因为其底层是数组结构,并且是可变长度的数组。
TreeSet:对集合元素进行排序有两种方法,一个是让元素自身具备比较性,实现Comparable接口,然后复写comparaTo()方法。
第二种方式是:让集合具备比较性,传入比较器,让比较器的类实现Comparator接口,并复写compara()方法。
使用集合泛型限定时,存元素使用上限限定,取元素时使用泛型下限限定。当集合中使用的方法都是Object方法时,就使用通配符。
Map集合是用来存储键值对的,在查表法中比较常见。子类有
HashMap和TreeMap,类似于Set集合中的HashSet和TreeSet.
可以通过键获取值,也可以通过把Map集合转成Set集合,使用迭代器来获取其中的键和值。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |