没有合适的资源?快使用搜索试试~ 我知道了~
首页Map、Set、Iterator迭代详解
Map、Set、Iterator迭代详解
4星 · 超过85%的资源 需积分: 19 15 下载量 183 浏览量
更新于2023-03-03
评论 1
收藏 51KB DOC 举报
Map接口定义了四种类型的方法,每个Map都包含这些方法。 equals(Object o)比较指定对象与此Map的等价性。 hashCode()返回此Map的哈希码。 Map定义了几个用于插放和删除元素的变换方法。 remove(Object key) 从Map中删除键和关联的值。 put(object key,Object value) 将指定值与指定键相关联。 clear() 从Map虽删除所有映射。
资源详情
资源评论
资源推荐
Map、Set、Iterator 迭代详解与
Java 平台的集合框架
阅读次数: 835 次 发布时间: 2010-01-29 14:05:56 发布人: 大 Q
来源: csdn
Map、Set、Iterator 迭代详解
Map 接口定义了四种类型的方法,每个 Map 都包含这些方法。
equals(Object o)比较指定对象与此 Map 的等价性。
hashCode()返回此 Map 的哈希码。
Map 定义了几个用于插放和删除元素的变换方法。
remove(Object key) 从 Map 中删除键和关联的值。
put(object key,Object value) 将指定值与指定键相关联。
clear() 从 Map 虽删除所有映射。
putAll(Map t) 将指定 Map 中的所有映射复制到此 Map。
查看 Map
迭代 Map 中的元素不存在直接了当的方法。假如要查询某个 Map 以了解其哪些元素满足特定查询或假如
要迭代其所有元素,则您首先需要获取该 Map 的“视图”。有三种可能的视图:所有
键值对、所有键、所有值。前两个视图均返回 Set 对象,第三个视图返回 Collection 对象。就这两种情
况而言,问题到这里并没有结束,这是因为您无法直接迭代 Collection 对象或 Set 对
象。要进行迭代,您必须获得一个 Iterator 对象。因此要迭代 Map 的元素,必须进行如下编码:
Iterator keyValuePairs = aMap.entrySet().iterator();
Iterator keys=aMap.keySet().iterator();
Iterator values=aMap.values().iterator();
值得注意的是,这些对象实际上是基础 Map 的视图,而不是包含所有元素的副本。
使用 Iterator 对象,您可以遍历 Map 的元素,还可以删除 Map 中的元素。
EnterySet()返回 Map 中所包含映射的 Set 视图。Set 中的每个元素都是一个 Map.Entry 对象,可以使
用 getKey()和 getValue()方法访问后者的键元素和值元素。
keySet()返回 Map 中所包含键的 Set 视图。删除 Set 中的元素还将删除 Map 中相应原映射。
values()返回 Map 中所包含值的 Collection 视图。删除 Collection 中的元素还将删除 Map 中相应的映
射
Map 访问和测试方法:
get(Object key) 返回与指定键关联的值
containsKey(Object key) 假如 Map 包含指定键的映射,则返回 True
isEmpty() 假如 Map 不包含键-值映射,则返回 True
size() 返回 Map 中的键值映射的数目。
Set(interface):存入 Set 的每个元素必须是唯一的,因为 Set 不保存重复元素。加入 Set 的 Object 必
须定义 equals()方法以确保对象的唯一性。
Set 与 Collection 有完全一样的接口。Set 接口不保证维护元素的次序。
迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开人员不需要了解该序列的
底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。
Java 中的 Iterator 功能比较简单,并且只能单向移动:使用方法 iterator()要求容器返回一个 Iterator。
第一次调用 Iterator 的 next()方法时,它返回序列的第一个元素。使用 next()获得序列中的
下一个元素。使用 hasNext()检查序列中是否还有元素。使用 remove()将迭代器新返回的元素删除。
Java 平台的集合框架
“集合框架”主要由一组用来操作对象的接口组成。不同接口描述一组不同数据类型。
集合接口:6 个接口,表示不同集合类型,是集合框架的基础。
抽象类:5 个抽象类,对集合接口的部分实现。可扩展为自定义集合类。
实现类:8 个实现类,对接口的具体实现。
在很大程度上,一旦您理解了接口,您就理解了框架。虽然您总要创建接口特定的实现,但访问实际集合
的方法应该限制在接口方法的使用上;
因此,允许您更基本的数据结构而不必改变其它代码。
Collection 接口是一组允许重复的对象。
Set 接口继承 Collection,但不允许重复,使用自己内部的排列机制。
List 接口继承 Collection,允许重复,以元素安插的次序来放置元素,不会重新排列。
Map 接口是一组成对的键-值对象。Map 中不能有重复的 Key.拥有自己的内部排列机制。
容器中的元素类型都为 Object。从容器取得元素时,必须把它转换成原来的类型。
集合接口:
Collection 接口:用于表示任何对象或元素组。想要尽可能以常规方式处理一组元素时,就使用这一接口。
1、单元素添加、删除操作:
Boolean add(Object o):将对象添加到集合
Boolean remove (Object o):如果集体中有与 O 相匹配的对象,则删除对象 O。
2、查询操作:
Int size():返回当前集合中元素的数量
Boolean isEmpty():判断集合中是否有任何元素。
Boolean contains(Object o):查找集合中是否否有对象 O
Iterator iterator():返回一个迭代器,用来访问集合中的各个元素。
3、组操作:作用于元素组或整个集合
Boolean containsAll(Collection c):查找集合中是否含有集合 C 中所有元素
Boolean addAll(Collection c):将集合 C 中所有元素添加到该集合。
Void clear():删除集合中所有元素。
Void removeAll(Collection c):从集合中删除集合 C 中的所有元素。
Void retainAll(Collection c):从集合中删除集合 C 中不包含的元素
剩余12页未读,继续阅读
kaka30
- 粉丝: 3
- 资源: 18
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论1