您的位置:首页 > 其它

【Map使用】遍历Map集合案例keySet()和 entrySet()

2016-12-27 22:06 525 查看
/*遍历Map集合

Set<K> keySet():得到所有键的集合,存储到Set中,并返回该Set集合,因为Set有迭代器

所有可以通过迭代器,每次迭代出一个键,再根据键获取到对应的值

Set<Map.Entry<K.V> entrySet():得到每个键值对对应的映射关系类型的值,存到Set集合中,

并返回该集合,因为Set有迭代器,每次迭代出来的都是一个映射关系类型的值,

从这个映射关系类型的值中即可得到键,也可以得到值

(就像可以通过结婚证得到男方和女方的信息一样的概念)

Entry:是定义在Map中的一个静态接口,有了集合,就有了集合中的键值对,才会存在映射关系,

所以映射关系是对集合内部事物的描述,所以定义在Map内部

【添加】:

V put(K key,Value)

void putAll(Map<? extends K,? extends V> m)

【删除】:

V remove(Object key)

void clear();

【获取】:

V get(Object key)

Set<K> keySet()

Set<Map.Entry<K,V>> entrySet()

int size() //这个是指这个集合中一共有多少个

Collection<V> values() //得到多少有值

【判断】:

boolean isEmpty() //判断是否为空

boolean contrainsKey(Object key)//是否包含键

boolean contrainsValue(Object value)//是否包含值

*/

package com.Map;

import java.util.*;

public class TestMapBL {

public static void main(String[] args) {

Map<String,String> map=new HashMap<String,String>();

map.put("001", "dondon");

map.put("002", "xixi");

map.put("003", "nannan");

/* 遍历集合演示1:Set<K> keySet():
得到所有键的集合,存储到Set中,并返回该Set集合,因为Set有迭代器

所有可以通过迭代器,每次迭代出一个键,再根据键获取到对应的值
*/

Set<String> keys=map.keySet();//将所有键的集合到到Set

Iterator<String> ite=keys.iterator();//定义每次迭代出来的都是字符串

while(ite.hasNext())

{

String key=ite.next();//获取到迭代器的键

String value=map.get(key);//通过键获取到对应键的值

System.out.println(key+"="+value);

}

/* 输出效果:

001=dondon

002=xixi

003=nannan*/

/* 遍历集合演示2:Set<Map.Entry<K.V> entrySet()

* 原理:将数据存放到Set,再通过Set的迭代器,遍历出来值,entrySet存放的是把值当作一个结婚证来用

* */

Set<Map.Entry<String, String>> entry=map.entrySet();

Iterator<Map.Entry<String, String>> ite2=entry.iterator();

while(ite2.hasNext())

{

Map.Entry<String, String> en=ite2.next();

String key2=en.getKey();

String value2=en.getValue();

System.out.println(key2+"="+value2);

}

/* 输出效果:

001=dondon

002=xixi

003=nannan*/

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: