なんちゃらMap

なんちゃらMap系のコードをいじるのでメモ。

 

■追加する場合

HashMap:バラバラ

TreeMap:キーでソート

LinkedHashMap:追加された順

HashMap、TreeMap、LinkedHashMapの違いとLRU | infoScoop開発者ブログより

(ググったワード:"treemap linkedhashmap")

 

■ループ

LinkedHashMap<String, String> map = new LinkedHashMap<String, String>();

for(Map.Entry<String,String> entry : map.entrySet()){
          // entry.getKey()
          // entry.getValue()
}

[java][基本] HashMap、HashSet、ArrayListのループ処理サンプル | keiのTECブログより

(ググったワード:"linkedhashmap ループ")

 

以下、6/27追記。

keyをIntegerからStringに変更したら、今までparseIntで同じkey扱いだった"01"と"1"が別keyとなっていた。

なんでかな…と調べたところ、重複したkeyで新たにputすると、valueは新しいものに置換される、とのこと。

Mapに重複したキー値を追加した場合 - 裏ブログより

(ググったワード:"treemap キー 重複")

APIの仕様にも書いてありました。

Map (Java Platform SE 6)

つまり、今までは新しいvalueで置換していたということか。
従来の処理と異なるので、確認事案でした。