Java實(shí)現(xiàn)將容器 Map中的內(nèi)容保存到數(shù)組
我就廢話不多說(shuō)了,大家還是直接看代碼吧~
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] + " " );
}
}
}
運(yùn)行結(jié)果為:

補(bǔ)充知識(shí):Java map集合的兩種取出方式
map集合的兩種取出方式:
1,Set<k> keySet:將map中所有的鍵存入到Set集合。因?yàn)閟et具備迭代器。
所以可以迭代方式取出所有的鍵,再根據(jù)get方法。獲取每一個(gè)鍵對(duì)應(yīng)的值。
Map集合的取出原理:將map集合轉(zhuǎn)成set集合。再通過(guò)迭代器取出。
2,Set<Map.Entry<k,v>> entrySet:將map集合中的映射關(guān)系存入到了set集合中,
而這個(gè)關(guān)系的數(shù)據(jù)類型就是:Map.Entry
Entry其實(shí)就是Map中的一個(gè)static內(nèi)部接口。
為什么要定義在內(nèi)部呢?
因?yàn)橹挥杏辛薓ap集合,有了鍵值對(duì),才會(huì)有鍵值的映射關(guān)系。
關(guān)系屬于Map集合中的一個(gè)內(nèi)部事物。
而且該事物在直接訪問(wèn)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集合中的映射關(guān)系取出。存入到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();
//有了鍵可以通過(guò)map集合的get方法獲取其對(duì)應(yīng)的值。
String value = map.get(key);
System.out.println("key:"+key+",value:"+value);
}
*/
}
}
/*
Map.Entry 其實(shí)Entry也是一個(gè)接口,它是Map接口中的一個(gè)內(nèi)部接口。
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實(shí)現(xiàn)將容器 Map中的內(nèi)容保存到數(shù)組就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Reactor定制一個(gè)生產(chǎn)的WebClient實(shí)現(xiàn)示例
這篇文章主要為大家介紹了Reactor定制一個(gè)生產(chǎn)的WebClient實(shí)現(xiàn)示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08
Mybatis自定義插件Interceptor問(wèn)題
這篇文章主要介紹了Mybatis自定義插件Interceptor問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11
Java springboot Mongodb增刪改查代碼實(shí)例
這篇文章主要介紹了Java springboot Mongodb增刪改查代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
Spring boot redis cache的key的使用方法
這篇文章主要介紹了Spring boot redis cache的key的使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05
java 設(shè)計(jì)模式之State(狀態(tài)模式)
這篇文章主要介紹了java 設(shè)計(jì)模式之State(狀態(tài)模式)的相關(guān)資料,一個(gè)類的行為基于它的狀態(tài)的改變而改變。狀態(tài)模式歸屬于行為型模式,需要的朋友可以參考下2017-08-08
詳解Spring Cloud Eureka多網(wǎng)卡配置總結(jié)
本篇文章主要介紹了詳解Spring Cloud Eureka多網(wǎng)卡配置總結(jié),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
解決SpringBoot項(xiàng)目讀取yml文件中值為中文時(shí),在視圖頁(yè)面顯示亂碼
這篇文章主要介紹了解決SpringBoot項(xiàng)目讀取yml文件中值為中文時(shí),在視圖頁(yè)面顯示亂碼的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08

