2017-04-02 9 views
0

申し訳ありません、Javaを使いこなす、おそらく本当に簡単な質問です。ハッシュマップに値を追加するJava

私はアウトマップを持っているとしましょう。(キー、インナーマップ)、インナーマップには(ストリング、ダブル)があります。

だから、このように見えます。

HashMap<String, Double> inner = new HashMap<String, Double>(); 
    HashMap<Integer, Map<String, Double>> outter = new HashMap<Integer, Map<String, Double>>(); 
    inner.put("MyVal", 24.5930553450692151964475150); 
    inner.put("MyVal2", 48.6514790522118734018261775); 
    outter.put(20151205, inner) 

私が終わると、このようなoutterマップ:

{20151205={MyVal=24.593055345069214, MyVal2=48.651479052211876}} 

今度は、私はもはや、内部マップへのアクセス権を持っているので、私はそれで、それ以上の値を置くことができないと言うんしましょう。しかし、私はアウトマップだけを使ってMyVal3を追加したい。

どうすればいいですか?

アウトタイルマップのみのコードを使用して、このようなものにしたいと考えています。

{20151205={MyVal=24.593055345069214, MyVal2=48.651479052211876, MyVal3=48.4846855555555}} 

ありがとうございます! SOの別の場所でこの質問を正確に見つけることができませんでした。

いつもありがとうございます。

答えて

3

常に内部マップにアクセスできますが、キーを取得する必要があります。

あなたは単に置くだけです。

outter.get(20151205).put("MyVal3", 48.4846855555) ; 

あなたは

+0

おかげでたくさん存在しないキーを取得しようとすると、NullPointerExceptionが発生に注意してください!、理にかなっています! – WhitneyChia

関連する問題