Java实现将容器 Map中的内容保存到数组
我就废话不多说了,大家还是直接看代码吧~
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); } /* //先获取map集合的所有键的Set集合,keySet(); Set<String> keySet = map.keySet(); //有了Set集合。就可以获取其迭代器。 Iterator<String> it = keySet.iterator(); while(it.hasNext()) { String key = it.next(); //有了键可以通过map集合的get方法获取其对应的值。 String value = map.get(key); System.out.println('key:'+key+',value:'+value); } */ }} /*Map.Entry 其实Entry也是一个接口,它是Map接口中的一个内部接口。interface Map{ public static interface Entry { public abstract Object getKey(); public abstract Object getValue(); }}class HashMap implements Map{ class Hahs implements Map.Entry { public Object getKey(){} public Object getValue(){} } }*/
以上这篇Java实现将容器 Map中的内容保存到数组就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持好吧啦网。
相关文章:
1. 使用JSP实现简单的用户登录注册页面示例代码解析2. Django中的DateTimeField和DateField实现3. 如何理解Python中包的引入4. Python 使用 PyQt5 开发的关机小工具分享5. java操作mongodb之多表联查的实现($lookup)6. ASP中RecordSet Open和Connection.Execute一些区别与细节分享7. Python语言规范之Pylint的详细用法8. Android View实现圆形进度条9. SpringBoot 开发提速神器 Lombok+MybatisPlus+SwaggerUI10. Java实现三子棋小游戏