キーがコンパイルタイプの文字列であること以外に、他にも利点がありますか?またはそれを放棄することはできますか?私が格納している値は複数のタイプにすることができますMap <String、Object>としてマップを宣言する利点はありますか?
0
A
答えて
4
Map
とジェネリックタイプの情報が指定されていない場合は、は非推奨のです。ここではほとんどのIDEが警告を生成しています。これは、たとえそれがMap<Object, Object>
であっても、残された重要なものです。また、コンパイル時にキーがString
であることを確認するには、実際にはかなりの時間がかかります。
技術的には、コンパイル時に型が消去されるため、コードの実行中に利点はありません。しかし、Java 5以来、ジェネリック・タイプの情報を常に含めるべきです。
2
Map<String, Object>
を使用する利点は、主にコードの可読性です。 他の開発者がコードを読む方が簡単ですし、キャスト操作もいくつか保存されます。 コンパイル後、ジェネリックは削除されるので、アプリケーションには実質的な影響はありません。 以下も参照できます。reason generics were introduced in java 5
+0
主に安全性を主に入力します。 – EJP
関連する問題
- 1. C++:マップ<string, int>をイテレータを使用してベクトル<map <string, int>>にプッシュバックしますか?
- 2. Map <String、int []>のマップ方法は?
- 3. 一般的に宣言された変数をグローバル変数として宣言することに利点はありますか?
- 4. "new EventHandler"宣言の明示的な使用に利点がありますか?
- 5. C#で参照ライブラリを宣言することの利点は?
- 6. <String、String array>を使用してjavascriptでハッシュマップを宣言する
- 7. コレクションと自然な順序のマップ<Long、Map <String、String >>
- 8. Map <Integer、String>またはString []?
- 9. Scala Map [String、List [String]]をマップ[String、String]に変換する
- 10. Map <String、String>パラメータまたはオブジェクトをRetrofit経由でPOSTリクエストに渡す方法はありますか?
- 11. x64としてアセンブリをコンパイルすることに利点はありますか?
- 12. @OneToMany関係で休止状態のMap <String、String>をマップすることは可能ですか?
- 13. JPA Map <String、String>マッピング
- 14. map <string、string> in class
- 15. HttpServletクラスを抽象として宣言する必要はありますか?
- 16. マップ<String、List <Entity>>をJPAにマップすることはできますか?
- 17. 変数の宣言と宣言の間に違いはありますか?
- 18. リストに値を追加する<Map <String、String >>
- 19. マップをconstとして宣言して割り当てることはできません
- 20. 変数宣言でvarを使用する利点は何ですか?
- 21. PL/SQL識別子 'string'を宣言する必要があります
- 22. AtomicReferenceをvolatileとして宣言する必要がありますか?
- 23. モデルまたはコントローラで計算されたプロパティを宣言する必要がありますか? <pre><code>Sks.User = DS.Model.extend firstName: DS.attr("string") lastName: DS.attr("string") </code></pre> <p></p>は 'のfullName' 計算されたプロパティを宣言する必要があります:
- 24. Map <String、String>クラスとイテレータの使用を実装しているJava
- 25. リスト<Map <String、String >>にリスト<Map<?, ?>>をキャストする方法
- 26. 「* 2」の代わりに「<< 1」を使用する利点はありますか?
- 27. JSTLを使用してJavaBeanからArrayList <Map <String、String >>を反復処理するか?
- 28. Javaマップの印刷Map <String、Object> - 方法
- 29. background-size-heightを宣言する方法はありますか?
- 30. xmlrpc-cライブラリのC++バージョンで、<map <string、string>のオブジェクトをラップし、返り、取得する方法は?
'Map'は良いスタートです。 'Object'をもう少し正確にする方法を考えられますか?確かにあなたはオブジェクトに_何かをして、何らかのメソッドを呼び出しています。 –
同じマップに複数の型の値を格納することはできません。 –