Java实现将容器 Map中的内容保存到数组

时间:2021-05-19

我就废话不多说了,大家还是直接看代码吧~

import java.util.Map;import java.util.HashMap;import java.util.Map.Entry; public class mapToArr { public static void main(String[] args) { Map<String, Integer> map = new HashMap<String, Integer>(); map.put( "a", 11 ); map.put( "b", 23 ); map.put( "c", 68 ); System.out.println( "map=" + map.toString() ); int count = 0; Integer intArr[] = new Integer[map.size()]; // 方法一// for( String key : map.keySet() ) {// intArr[count] = map.get(key);// count++;// } // 方法二 for( Entry<String, Integer> entry : map.entrySet() ) { intArr[count] = entry.getValue(); count++; } for( int i = 0; i < intArr.length; i++ ) { System.out.print( "intArr[" + i + "]=" + intArr[i] + " " ); } } }

运行结果为:

补充知识:Java map集合的两种取出方式

map集合的两种取出方式:

1,Set<k> keySet:将map中所有的键存入到Set集合。因为set具备迭代器。

所以可以迭代方式取出所有的键,再根据get方法。获取每一个键对应的值。

Map集合的取出原理:将map集合转成set集合。再通过迭代器取出。

2,Set<Map.Entry<k,v>> entrySet:将map集合中的映射关系存入到了set集合中,

而这个关系的数据类型就是:Map.Entry

Entry其实就是Map中的一个static内部接口。

为什么要定义在内部呢?

因为只有有了Map集合,有了键值对,才会有键值的映射关系。

关系属于Map集合中的一个内部事物。

而且该事物在直接访问Map集合中的元素。

import java.util.*;class MapDemo2 { public static void main(String[] args) { Map<String,String> map = new HashMap<String,String>(); map.put("02","zhangsan2"); map.put("03","zhangsan3"); map.put("01","zhangsan1"); map.put("04","zhangsan4"); //将Map集合中的映射关系取出。存入到Set集合中。 Set<Map.Entry<String,String>> entrySet = map.entrySet(); Iterator<Map.Entry<String,String>> it = entrySet.iterator(); while(it.hasNext()) { Map.Entry<String,String> me = it.next(); String key = me.getKey(); String value = me.getValue(); System.out.println(key+":"+value); } }}

以上这篇Java实现将容器 Map中的内容保存到数组就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章