- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
主讲人 张龙
All Rights Reserved
• 课程目标
–理解Java 集合框架
–熟练使用java.util包中的相关类与接口进行编
程开发
–改善程序性能,今后进行程序编写时将大量使
用集合类与相关接口
• java.util 包中包含了一些在Java 2 中新增加的
最令人兴奋的增强功能:类集。一个类集
(collection )是一组对象。类集的增加使得
许多java.util 中的成员在结构和体系结构上
发生根本的改变。它也扩展了包可以被应
用的任务范围。类集是被所有Java程序员紧
密关注的最新型的技术
• 除了类集,java.util 还包含了支持范围广泛
的函数的各种各样的类和接口。这些类和
接口被核心的Java包广泛使用,同时当然也
可以被你编写的程序所使用。对它们的应
用包括产生伪随机数,对日期和时间的操
作,观测事件,对位集的操作以及标记字
符串。由于java.util 具有许多特性,因此它
是Java 中最被广泛使用的一个包
• Java 的类集(Collection )框架使你的程序处
理对象组的方法标准化。在Java 2 出现之前,
Java提供了一些专门的类如Dictionary ,
Vector ,Stack和Properties去存储和操作对象
组。尽管这些类非常有用,它们却缺少一
个集中,统一的主题。因此例如说使用
Vector 的方法就会与使用Properties 的方法不
同。以前的专门的方法也没有被设计成易
于扩展和能适应新的环境的形式。而类集
解决了这些(以及其他的一些)问题
• 类集框架被设计用于适应几个目的。首先,这种框架是高
性能的。对基本类集(动态数组,链接表,树和散列表)
的实现是高效率的。一般很少需要人工去对这些 “数据引
擎”编写代码(如果有的话)。第二点,框架必须允许不
同类型的类集以相同的方式和高度互操作方式工作。第三
点,类集必须是容易扩展和/或修改的。为了实现这一目
标,类集框架被设计成包含一组标准的接口。对这些接口,
提供了几个标准的实现工具(例如LinkedList ,HashSet和
TreeSet ),通常就是这样使用的。如果你愿意的话,也可
以实现你自己的类集。为了方便起见,创建用于各种特殊
目的的实现工具。一部分工具可以使你自己的类集实现更
加容易。最后,增加了允许将标准数组融合到类集框架中
的机制
• 算法(Algorithms )是类集机制的另一个重
要部分。算法操作类集,它在Collections类
中被定义为静态方法。因此它们可以被所
有的类集所利用。每一个类集类不必实现
它自己的方案,算法提供了一个处理类集
的标准方法
• 由类集框架创建的另一项是Iterator接口。一
个迭代程序(iterator )提供了一个多用途的,
标准化的方法,用于每次访问类集的一个
元素。因此迭代程序提供了一种枚举类集
内容(enumerating the contents of a
collection )的方法。因为每一个类集都实现
Iterator ,所以通过由Iterator定义的方法,任
一类集类的元素都能被访问到。
• 除了类集之外,框架定义了几个映射接口
和类。映射(Maps )存储键/值对。尽管映
射在对项的正确使用上不是 “类集”,但
它们完全用类集集成。在类集框架的语言
中,可以获得映射的类集 “视图”
(collection-view )。这个“视图”包含了
从存储在类集中的映射得到的元素。因此,
如果选择了一个映射,就可以将其当做一
个类集来处理
• 对于由java.util 定义的原始类,类集机制被
更新以便它们也能够集成到新的系统里。
所以理解下面的说法是很重要的:尽管类
集的增加改变了许多原始工具类的结构,
但它却不会导致被抛弃。类集仅仅是提供
了处理事情的一个更好的方法
• 最后的一点:如果你对C++ 比较熟悉的话,
那么你可以发现Java 的类集技术与在C++ 中
定义的标准模板库(STL)相似。
文档评论(0)