[英]usage of (object) in assigning values for hashmap
我看到了使用Hashmap的一段Java代碼,如下所示:
Map indata = new HashMap(12);
//load data
indata.put(“checking”, ((object) new Double(1.0)));
indata.put(“PURPOSE”, ((object)"2”));
讓我感到困惑的是“ put”方法的兩種用法,其中我們有((object) new Double(1.0))
和(object)"2"
。 (object)
在這里有什么作用? ((object) new Double(1.0))
和(object)"2"
什么區別?
它是對Object
的強制轉換(請注意,它用Java大寫)。
這似乎毫無意義,因為代碼無需強制轉換即可正常編譯(由於Map
的非通用版本期望Object
作為鍵和值的類型,因此傳遞String
或Double
不需要顯式強制轉換)。
問:(對象)在這里有什么作用?
答:它只是將String
和Double
為Object.
問:((object)new Double(1.0))與((object)“ 2”之間有什么區別?
答:不可以
((object) new Double(1.0)) - casting Double into Object
((object)"2”) - casting String into Object
編輯:
剛從評論中意識到它應該是Object
而不是object
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.