簡體   English   中英

獲取Hashmap中arrayList的大小

[英]get the size of arrayList inside Hashmap

我在 HashMap 中有一個 ArrayList 。 使用最少的代碼行,我需要獲取 ArrayList 的大小。

 Map<String, ArrayList<Map<String,String>>> map = new HashMap<String, ArrayList<Map<String,String>>>();
             map.put("data",childList);

如何使用一行代碼從變量“map”中獲取“childlist”的大小。

通過鍵獲取地圖值。 然后檢查它是否不為空。 然后,如果地圖不是通用的,這就是您的情況,那么該值是列表的一個實例。 所以你可以直接得到它的大小。

 Map<String, ArrayList<Map<String,String>>> map = new HashMap<String, ArrayList<Map<String,String>>>();
 map.put("data",childList);

 List<Map<String,String>> data = map.get("data");
 int size = 0;
 if (data != null) {
     size = data.size();
 }

奇怪的是,當我嘗試重新創建您的示例時,這似乎工作得很好。

map.get("data").size();

話雖如此,我最近遇到了這個問題,我的解決方案最終涉及到類型轉換,看起來像

((ArrayList<Map<String,String>>) map.get("data")).size();

這歸結為用括號包圍您的地圖調用及其轉換調用,然后從那里正常使用列表。

        ArrayList<Map<String, String>> childList = new ArrayList<Map<String, String>>();
        Map<String, ArrayList<Map<String,String>>> map = new HashMap<String, ArrayList<Map<String,String>>>();
        map.put("data", childList);
        int size = map.get("data").size();

嘗試: map.length(); map.size(); 在這里了解更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM