普通 Map の初期化をするときはインスタンス初期化子で put していくんだろうけど、あれダサいと思っているのでどうにかしたい。 ところで Objective-C で NSDictionary を初期化するときに Array 的なものを渡せるのでこれは良いかなと思って Java でやってみた。
Map<String, Integer> map = new MapBuilder<String, Integer>(new Object[] { "hoge", 10, "fuga", 20, "hahe", 30 }).build(); for (Map.Entry<String, Integer> entry : map.entrySet()) { System.out.println( "key: " + entry.getKey() + ", " + "value: " + entry.getValue() ); }