Java.util集合框架小结

Java.util集合框架笔记



0. Collection 接口
所有的集合都实现了此接口,可以用它里面的众多有用的方法,可自查JDK文档

1. ArrayList类

2. LinkedList 类

3. HashSet 类

HashSet (int capacity , float fillRatio) //容量和填充率

4. Queue 接口
最常用的出队和入队操作为: 出队: poll( ) 入队: offer( ) (队列长度固定,若满则返回false)
获得删除元素 : poll( ) , remove( )
如果队列为空,则分别返回 null 和 抛出异常
从队头获得但不能删除元素的方法为: peek( ) , element( )
如果队列为空,则分别返回 null 和 抛出异常

5. LinkedHashSet 类扩展自HashSet
以元素插入的顺序来维护集合的链表.

6. TreeSet 类
树结构,根据元素的正常升序排列的树集合

7. PriorityQueue 类
From J2SE 5.0
基于序列的比较函数创建一个序列,
如: PriorityQueue(int capacity, Comparator<? Extends E> c)
默认是升序排列

8. EnumSet 类
From J2SE 5.0
专用于enum类型的Set

9. ListIterator 接口
扩展自Iterator , 可双向遍历元素及元素的修改,它只对实现List接口的集合有效.
注意Iterator 接口不可双向遍历,它只定义了三个方法:
hasNext()  next() 
remove() 从迭代器指向的集合中移除迭代器返回的最后一个元素(可选操作)。

10. RandomAcdess 接口
标签接口,以表明可以类似哈希值似的随机访问里面的某一值,而时间复杂度一样,因为一般经过散列算法了.

11. SortedMap 接口
它确保以键的升序方式保存键值对.

12. Map.Entry 接口
Map接口声明的entrySet()方法返回的是包含所有映射键值对的集合,每一个集合元素就是一个Map.Entry 对象. 声明如下: interface Map.Entry<K,V>

13. HashMap 类

14. TreeMap 类
使用树结构来实现Map接口.可以以排序的方式存储键值对,并且允许快速查找.
树映射保证了它的元素以键的升序存储.

15. LinkedHashMap 类
以元素的插入顺序维护一个映射中元素的链表.

16. EnumMap 类
From J2SE 5.0 , 专用于enum类型的键.

17. Collections 类
集合框架定义了可用于集合和映射的算法,这些算法定义为Collections 类中的静态方法.
这些方法非常有用,可自查帮助文档.

18. Arrays 类
此类提供了在处理数组时很有用的方法,它们有利于连接集合和数组. 可自查帮助文档.



遗留的类和接口

没有集合类是同步的,但所有的遗留类是同步的,如Hashtable与HashMap近似,但Hashtable是同步的.
Properties类是Hashtable类的子类,用来存取key和 value 都是字符串的列表.


1. Enumeration 接口
定义了两个方法: Boolean hasMoreElements() , Object nextElement()

2. Vector 类
向量,实现一个动态数组,与ArrayList相似,但它是同步的,并且有很多不是集合框架的遗留方法.现与集合已充分兼容.因为它现在实现了List接口,所以可以像使用一个ArrayList实例一样使用向量.

3. Stack 类
它是Vector的子类,重要方法: pop() , push() , peek() (返回栈顶元素但不删除)

4. Dictionary 抽象类
表示键/值对存储库的抽象类,操作与映射相似,可以被认为是一个键/值对的列表.
此类过时,被Map 取代.

5. Hashtable 类
Hashtable与HashMap近似,但Hashtable是同步的.

6. Properties 类
Properties类是Hashtable类的子类,用来存取key和 value 都是字符串的列表.
使用方法参见CodeLibrary里的实例.

以上参考来自<<J2SE 5.0 参考大全>>,基本上是要用好几个重要的类就可以了.

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值