久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

Map Java 的遞歸迭代

Recursive iteration of a Map Java(Map Java 的遞歸迭代)
本文介紹了Map Java 的遞歸迭代的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

我正在編寫一個(gè)遞歸函數(shù),其目的是遍歷 pList 文件.我的代碼是

I am writing a recursive function whose purpose is to iterate over the pList File. My code is

public static void HashMapper(Map lhm1) throws ParseException {

    //Set<Object> set = jsonObject.keySet();
    for (Object entry : lhm1.entrySet()) {
        if(entry instanceof String)
        {
            System.out.println(entry.toString());
        }
        else
        {
            HashMapper((Map) ((Map) entry).keySet()); //getting Exception java.util.HashMap$HashMap Entry cannot be cast to java.util.Map
        }
    }
}

但是當(dāng)我調(diào)用我的函數(shù)HashMapper((Map) ((Map) entry).keySet());"時(shí).我得到了一個(gè)例外

But when i am calling my function "HashMapper((Map) ((Map) entry).keySet());". I am getting an exception of

java.util.HashMap$HashMap 條目不能轉(zhuǎn)換為 java.util.Map

java.util.HashMap$HashMap Entry cannot be cast to java.util.Map

我不知道如何調(diào)用我的函數(shù)以及如何將 Hashmap 條目轉(zhuǎn)換為 Map

I donot know how to call my function and how can i convert Hashmap entry to Map

推薦答案

Entry 確實(shí)不是String.它是 Map.Entry,因此您可以根據(jù)需要將其轉(zhuǎn)換為這種類型.

Entry is indeed not String. It is Map.Entry, so you can cast it to this type if you need.

但是自從大約 10 年前引入的 java 1.5 以來,您幾乎不需要強(qiáng)制轉(zhuǎn)換.而是使用泛型定義映射并使用類型安全編程.

However since java 1.5 that was introduced ~10 years ago you almost do not really need casting. Instead define map with generic and use type-safe programming.

很遺憾,您的代碼不是很清楚.您的意思是您的地圖的鍵或值是 String 嗎?假設(shè)鍵是字符串,值可以是字符串或映射.(順便說一句,這是非常糟糕的做法,所以我建議您在描述您的任務(wù)時(shí)提出其他問題,并詢問如何設(shè)計(jì)您的程序.)

Unfortunately your code is not so clear. Do you mean that key or value of your map is String? Let's assume that key is string and value can be either string or map. (BTW this extremely bad practice, so I'd recommend you to ask other question where you describe what your task is and ask how to design your program.)

但無論如何,到目前為止我可以建議你:

But anyway here is what I can suggest you so far:

public static void hashMapper(Map<String, Object> lhm1) throws ParseException {
    for (Map.Entry<String, Object> entry : lhm1.entrySet()) {
        String key = entry.getKey();
        Object value = entry.getValue();
        if (value instanceof String) {
             System.out.println(value);
        } else if (value instanceof Map) {
            Map<String, Object> subMap = (Map<String, Object>)value;
            hashMapper(subMap);
        } else {
             throw new IllegalArgumentException(String.valueOf(value));
        }

    }
}

這篇關(guān)于Map Java 的遞歸迭代的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

Convert List of Strings into Map using Java-8 Streams API(使用 Java-8 Streams API 將字符串列表轉(zhuǎn)換為 Map)
Getting data from JSON(從 JSON 獲取數(shù)據(jù))
java linkedhashmap iteration(javalinkedhashmap迭代)
Converting a list of objects to Map(將對(duì)象列表轉(zhuǎn)換為 Map)
Create a HashMap with a fixed Key corresponding to a HashSet. point of departure(用一個(gè)固定的Key對(duì)應(yīng)一個(gè)HashSet創(chuàng)建一個(gè)HashMap.出發(fā)點(diǎn))
HttpMessageConverter exception : RestClientException: Could not write request: no suitable HttpMessageConverter found(HttpMessageConverter 異常:RestClientException:無法寫入請(qǐng)求:找不到合適的 HttpMessageConverter) - IT屋-程序員
主站蜘蛛池模板: 欧美日韩国产一区 | 一区二区三区视频在线播放 | www激情| 欧美性精品| 欧美日韩精品一区二区三区 | 国产精品久久一区二区三区 | 97人人草 | 黄色一级片免费 | 日韩欧美国产成人 | 黄色免费网站 | 欧美另类视频 | 国产精品久久久999 成人在线国产 | 天天插天天插 | 国产成人在线免费观看 | 日本大尺度吃奶做爰久久久绯色 | www在线播放 | 亚洲天堂男人天堂 | 日本成人一区二区 | 中文在线字幕免费观 | 日皮视频免费看 | 手机看片日韩 | 日韩av在线免费观看 | 俺去俺来也在线www色官网 | 欧美在线播放视频 | 色呦呦国产精品 | 中文字幕日韩在线观看 | 蜜桃精品一区二区三区 | av激情小说 | 青青草精品 | 黄色在线观看网址 | 欧美精品系列 | 亚洲一区二区三区在线 | 官场少妇尤物雪白高耸 | 五月开心网 | 亚洲一区二区三区在线 | 亚洲国产精品久久久久久久 | 久久久久伊人 | 人人草在线视频 | 中文字幕精品在线 | 日本在线免费观看视频 | 久久福利社 |