java中关于collection和map及其子类

来源:互联网 发布:10nba总决赛第七场数据 编辑:程序博客网 时间:2024/05/23 12:03
collection(集合)是一个根接口,用来描述一组对象的集合。JDK并没有直接提供对个接口的实现,而是提供了对她的子接口的实现例如set和list等。在collection接口中用的最多的两种基本方法是:add和 Iterator。add是把对象添加到相应的数据结构中,如果成功返回true,否则返回false(集合中不能拥有相同的元素)。而Iterator 方法则返回一个Iterator接口的对象。Iterator接口又包括了三种基本操作:next,hasnext,remove。next用来依次访问数据结构中的元素,hasnext用来判断是否还有没有访问的元素,remove用来删除最后一次调用next返回的对象。
  
  Collection 一个允许重复元素的无序集合。
  Set 一个不允许元素重复的无序集合。
  List 有序集合,多数情况下允许元素重复,可按位置访问,扩展自Collection。
  Map Key-Value映射。
  SortedSet 元素自动排序的集合,既可以使用默认的排序算法,也可以指定其它的排序算法。
  SortedMap 有序的Key-Value映射,既可以使用默认的按Key值排序算法,也可以指定其它的排序算法。
  List是collection的子接口,她是一种有序的集合(队列)。通过他可以精确的控制访问数据结构的顺序和位置。
  set也是collection的子接口,她是一种无序、散列的集合(哈西表)。通过他可以快速查找他的数据结构而不需要知道具体的排列方式。
  map(映射)是一个“键-值”对应的接口。每一个键只能映射唯一的值。
  还有些其他子接口及实现类可以参考 http://java.sun.com/j2se/1.4/docs/api/
  至于具体选用哪一种方案,以下仅供参考:
  1)大量的随机访问可以用ArrayList类
  2)大量的插入、删除建议用LinkedList类
  3)关于Set,建议都使用HashSet类
  4)映射的最佳策略是创建和填充时用TreeMap日后需要大量检索时再转换成HashMap    
原创粉丝点击