java中Map集合的常用遍历方法及HashMap的应用实例
来源:互联网 发布:discuz cms 编辑:程序博客网 时间:2024/05/21 01:32
HashMap中的
keySet() 方法
返回映射中所包含的键的 set 视图,
返回类型为Set 如果只查询HashMap中的所有键,可以用到这个方法。 entrySet()
返回此映射所包含的映射关系(映射关系是指键值对)的 collection 视图,
在返回的集合中,每个元素都是一个Map.Entry。
与keySet()不同的是,keySet只返回所有的键,
而entrySet则返回的是键值对,不仅包含键,还包括键的值。
所有这里说是“映射(这里指的是Map)所包含的映射关系(键值对关系)”。
Map.Entry 是什么呢?
接口Map.Entry (K指的是键,V指的是值),映射项(键-值对)。
Map.entrySet 方法返回:
映射的 collection 视图,其中的元素属于此类。
获得映射项引用的 惟一 方法:
就是通过此 collection 视图的迭代器来实现。
(登记entry)
第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { Map.Entry entry = (Map.Entry) iter.next(); Object key = entry.getKey(); Object val = entry.getValue(); } ---------效率高,以后一定要使用此种方式!------------------------第二种: Map map = new HashMap(); Iterator iter = map.keySet().iterator(); while (iter.hasNext()) { Object key = iter.next(); Object val = map.get(key); }遍历啊
----------------------------------------------------------------------------
Map是java中的接口,Map.Entry是Map的一个内部接口。
Map提供了一些常用方法,如keySet()、entrySet()等方法。
keySet()方法返回值是Map中key值的集合;
entrySet()的返回值也是返回一个Set集合,此集合的类型为Map.Entry。
Map.Entry是Map声明的一个内部接口,此接口为泛型,定义为Entry<K,V>。它表示Map中的一个实体(一个key-value对)。接口中有getKey(),getValue方法。
由以上可以得出,遍历Map的常用方法:
1. Map map = new HashMap();
Irerator iterator = map.entrySet().iterator();
while(iterator.hasNext()) {
Map.Entry entry = iterator.next();
Object key = entry.getKey();
//
}
2.Map map = new HashMap();
Set keySet= map.keySet();
Irerator iterator = keySet.iterator;
while(iterator.hasNext()) {
Object key = iterator.next();
Object value = map.get(key);
//
}
另外,还有一种遍历方法是,单纯的遍历value值,Map有一个values方法,返回的是value的Collection集合。通过遍历collection也可以遍历value,如
Map map = new HashMap();
Collection c = map.values();
Iterator iterator = c.iterator();
while(iterator.hasNext()) {
Object value = iterator.next();
}
--------------------------------------------------
Map的遍历大体有3种:
1、遍历Map.entrySet():它的每一个元素都是Map.Entry对象,这个对象中,
放着的就是Map中的某一对key-value;
2、遍历Map.keySet():它是Map中key值的集合,我们可以通过遍历这个集合来
读取Map中的元素;
3、遍历Map.values():它是Map中value的集合,我们可以直接通过这个集合遍历
Map中的值,却不能读取key。
**********方法一************
b=lisi
c=wangwu
a=zhangsan
******方法二遍历****************
b=lisi
c=wangwu
a=zhangsan
**********方法三遍历************
b=lisi
c=wangwu
a=zhangsan
**********方法四遍历************
b=lisi
c=wangwu
a=zhangsan
**********方法五************
lisi
wangwu
zhangsan
Map中元素存放是无序的
HashMap注意事项:1,HashMap底层维护一个数组,我们向HashMap中所放置的对象实际上是存储在该数组当中;
2,当向HashMap中put一对键值时,它会根据key的hashCode值计算出一个位置,该位置就是此对象准备往数组中存放的位置。
HashMap应用举例:控制台输入一句英语,简单统计各个单词出现的次数
输出结果:
请输入一句英语,单词间用空格隔开:
I love U China I am pround to be a Chinese
统计单词出现的个数,结果如下:
to=1
U=1
love=1
am=1
a=1
pround=1
Chinese=1
I=2
China=1
be=1
http://blog.csdn.net/shenshen123jun/article/details/9074523
- java中Map集合的常用遍历方法及HashMap的应用实例
- java中Map集合的常用遍历方法及HashMap的应用实例
- java中Map集合的常用遍历方法及HashMap的应用实例
- java中Map集合的常用遍历方法及HashMap的应用实例
- java的集合 Map集合,HashMap集合,LinkedHashMap集合 使用方式及遍历
- JAVA中Map集合常用的方法
- Java中常用的集合类、ArrayList 、HashMap及其遍历方法
- java HashMap 循环遍历map的方法
- Map 的遍历过程及应用实例
- java中List、Set、Map集合的遍历方法总结
- java中遍历Map集合的集中方法总结
- 在Java中遍历Map集合的几种方法
- Java集合框架中Set、List、Map的遍历方法
- java中List、Set、Map集合的遍历方法总结
- java中List、Set、Map集合的遍历方法总结
- java遍历Map的常用方法及优缺点
- java中遍历hashmap的两种方法及分析
- Java 遍历Map集合的方法
- red5入门教程
- 关于 802.11 协议
- hiveFailedCollection: ParseException line 1:0 character '<feff>' not supported here
- hdu4634 状压bfs
- 固定列表布局
- java中Map集合的常用遍历方法及HashMap的应用实例
- nil、null与ngx.null
- Servlet容器
- HDU 1423 Greatest Common Increasing Subsequence(最长公共子序列+最长不下降子序列)
- DOM4J的简单介绍
- NetFlow
- grunt、gulp 的区别
- Eclipse中jsp页面报The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
- 封装一个自动绑定View和数据的Adapter