繁体   English   中英

(object)在为hashmap分配值时的用法

[英]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作为键和值的类型,因此传递StringDouble不需要显式强制转换)。

问:(对象)在这里有什么作用?
答:它只是将StringDoubleObject.

问:((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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM