您的位置:首頁技術文章
文章詳情頁

Java實現將容器 Map中的內容保存到數組

瀏覽:4日期:2022-08-23 18:43:30

我就廢話不多說了,大家還是直接看代碼吧~

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中的內容保存到數組

補充知識: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中的內容保存到數組就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
国产综合久久一区二区三区