[英]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或工具包?
- 在一個數據結構上運行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.