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 参考大全>>,基本上是要用好几个重要的类就可以了.
分享到:
相关推荐
在Java编程语言中,`java.util....总之,`Vector`是Java集合框架的一部分,提供了一种线程安全的方式来管理动态数组。理解其特性和用法对于编写多线程Java程序至关重要,但同时也要权衡其性能和线程安全之间的平衡。
**Collection接口**作为Java集合框架的基础部分,在Java编程中扮演着非常重要的角色。它定义了一系列用于处理或操作集合中元素的方法,是所有集合类的根接口。 ### 11.2 Collection接口简介 #### 1. Collection...
### Java基础知识小结 #### 1.1 `getPath()`、`getAbsolutePath()`、`getCanonicalPath()`的区别 在Java中,处理文件路径时经常会用到`getPath()`、`getAbsolutePath()`以及`getCanonicalPath()`这三个方法。它们...
- **小结** - Java 的 I/O 包提供了丰富的类来处理文件和流,包括基本的字节流、字符流、文件流、缓冲流等。 **1.4 Java中的一些常用词汇** - **术语解释** - 如继承、封装、多态等。 **1.5 J2SE学习中的30个...
1.6 本章小结 / 33 .第2章 从“hello world”开始 / 34 2.1 获取ext js 4 / 34 2.2 配置使用ext js库 / 35 2.3 编写“hello world”程序 / 37 2.4 关于ext.onready / 38 2.5 关于ext.blank_image_url / 40 ...
- **1.4 本章小结** - 对求职过程进行了总结,并强调了成功应聘的关键因素。 #### 二、Java试题篇 - **2.1 Java概述和开发环境** - **理解Java**:介绍Java的历史背景、特点及其应用场景。 - **构建Java开发...
1. **常用API**:这部分可能涵盖各种常用库,例如Java的`java.util`包,其中包含集合框架(如ArrayList、HashMap)、日期时间处理(如Date、Calendar)、IO流操作(如FileInputStream、PrintWriter)等。在Python中...
#### Java集合框架与泛型面试题详解 ##### 1. ArrayLi st 和 LinkedList 的区别 - **ArrayList**:基于数组实现的列表,提供了随机访问元素的能力,支持快速查找(时间复杂度为O(1))。在数组末尾添加或删除元素时...
Java中的Vector类是Java集合框架中的一个经典组件,它是一个动态数组,能够随着元素的增加自动地扩展容量。Vector类和ArrayList类在很多方面都很相似,例如两者都是基于数组实现的线程安全的可调整大小的数组结构。...
此外,还可以通过`@class@method(args)`调用静态方法,`@class@field`获取静态字段,如果省略`class`,默认使用的是`java.util.Math`类,如`@@min(5,3)`。 访问静态成员和索引是OGNL的另一大特点。静态方法和字段...
Java中的Map接口是Java集合框架的重要组成部分,它用于存储键值对的数据结构,广泛应用于数据库操作、JSON序列化、XML解析等场景。Map接口不是直接实现了数据存储的类,而是作为一个规范,定义了一系列操作键值对的...
14.5.2. 小结 14.6. 文档视图(PDF/Excel) 14.6.1. 简介 14.6.2. 配置和安装 14.6.2.1. 文档视图定义 14.6.2.2. Controller 代码 14.6.2.3. Excel视图子类 14.6.2.4. PDF视图子类 14.7. JasperReports 14.7.1. 依赖...
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java...
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置...
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java...
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7...
Java范例开发大全(全书源程序),目录如下: 第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境...