簡體   English   中英

深度未知的Java的嵌套hashmap

[英]nested hashmaps of unknown depth java

我有一個需要嵌套的哈希圖的要求。 但是深度將在運行時確定。 例如,如果在運行時用戶說3,那么我的哈希圖應該像

HashMap<String, HashMAp<String, HashMap<String, String>>>

如果他說4

HashMap<String, HashMAp<String, HashMap<String, HashMap<String, String>>>>

有什么方法可以實現這種功能? 其他一些API或工具包?

  1. 在一個數據結構上運行100個功能比在10個數據結構上運行10個功能更好。 艾倫·佩利斯(Alan Perlis)。

您所要求的是在Clojure的standrad庫中實現的:與已陳述的相反,嵌套的哈希圖是表示樹的明顯且絕對明智的方法。 ```clojure(def my-tree {:a {:aa 0}:b 0:c {:cc 0:dd {:e 0})

(=(獲取我的樹[:c:dd:e])0)`''

您也可以通過非對象圖來表示它,但是您將失去哈希圖的一般性:對象始終是概念性哈希圖,對其可具有的屬性有所限制。

哦,這幾乎肯定是一個非常糟糕的主意。

您聽起來好像真的想要一棵樹或一個圖形,卻不知道如何編寫它,所以您發明了這種表示法以嘗試使其與HashMap一起使用。

別。

通過弄清楚如何正確編寫所需的內容,您會更好。

出於充分的理由,沒有圖書館可以做您想做的事情-您不應該這樣做。

您當然可以使用HashMap<String, ?>類型定義哈希映射,並以類型安全為代價獲取動態深度。

但是duffymo是正確的-您可能濫用了該結構。 為什么要這樣的類型?

您可能想看一下有關樹木的文章 您可能會發現它很有幫助。

暫無
暫無

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

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