2011年3月18日

Mapを生成しながら同時に key と value を putする方法

key と value (キーと値)を持つ Map を生成するとき、よく見るコードは、先に Map を生成し、あとから put するもの。

Map<string, string>map = new HashMap<string, string>();
map.put("name", "のび太");
map.put("sex",  "男性");


匿名クラスインスタンスイニシャライザーを利用すると下記のようにも書ける。
Map<string, string>map = new HashMap<string, string>(){{
        put("name", "のび太");
        put("sex",  "男性");
}};

これだけじゃ、ありがたみも少なめだが、Map内Map、List内Mapみたいなときはかなり見やすく書ける。PerlやPHP、JavaScript等ではごくごく普通にできることだが、Javaだと書き方がわからなかったのでメモ!

参考サイト:Mapの初期化 - traih.log

0 件のコメント:

コメントを投稿