0

次のように、Hashmap を使用した Java コードを見ました。

Map indata = new HashMap(12);
//load data
indata.put(“checking”, ((object) new  Double(1.0)));
indata.put(“PURPOSE”, ((object)"2”));

((object) new Double(1.0)) 私を混乱させているのは、「put」メソッドの 2 つの使用法(object)"2"です。ここでは何が(object)機能しますか? と の間に違いは((object) new Double(1.0)) あり(object)"2"ますか?

4

2 に答える 2

2

へのキャストObjectです (Java では大文字になっていることに注意してください)。

コードはキャストなしで正常にコンパイルされるため、ここでは無意味に思えます (非ジェネリック バージョンのはキーと値の両方の型としてMap期待されるため、 aまたは aを渡すことは明示的なキャストを必要としません)。ObjectStringDouble

于 2012-06-25T17:37:35.037 に答える
1

Q: (オブジェクト) はここでどのような機能を果たしますか?
A: キャストするだけStringDoubleObject.

Q: ((オブジェクト) new Double(1.0)) と (オブジェクト)"2" の違いは?
A: いいえ

((object) new Double(1.0))  - casting Double into Object
((object)"2”) -  casting String into Object   

編集:
コメントから、そうあるべきではObjectないことに気づきましたobject

于 2012-06-25T17:31:42.993 に答える