[英]Java Equivalent to Python Dictionaries
我是 Python 的長期用戶,非常喜歡字典的使用方式。 它們非常直觀且易於使用。 是否有一個很好的 Java 相當於 python 的字典? 我聽說有人使用哈希圖和哈希表。 有人可以解釋使用哈希表和哈希圖與 Python 字典的異同嗎?
字典和地圖的思想是相似的。 兩者都包含類似的元素
key1:value1, key2:value2 ... and so on
在 Java 中, Map
的實現方式不同,如HashMap
或TreeMap
等。 put(), get()
操作類似
import java.util.HashMap;
Map map = new HashMap();
// Put elements to the map
map.put("Ram", new Double(3434.34));
map.put("Krishna", new Double(123.22));
map.put("Hary", new Double(1378.00));
//to get elements
map.get("Krishna"); // =123.22
map.get("Hary"); // = 1378.00
請參閱 java8 https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html 中的 HashMap 文檔
據我所知(我實際上並沒有使用 java)字典只是 hashmap/hashtable 的另一個名稱。
從http://www.fluffycat.com/Java/HashMaps/抓取代碼似乎它們以非常相似的方式使用,還有一些額外的 java 樣板。
兩者之間的一個區別是dict
對哪些數據類型可以充當鍵有更嚴格的要求。 Java 將允許任何對象用作鍵——盡管您應該注意確保對象的hashCode()
方法返回反映其內部狀態的唯一值。 Python 需要鍵來適應它對hashable 的定義,它指定對象的哈希碼在其生命周期內永遠不應該改變。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.