JRubyのソースコードを読んでたらみつけた無名クラスを使った初期化方法。 Map<String, Integer> map = new HashMap<String, Integer>(); map.put("one", 1); が次のように書かれてた。 Map<String, Integer> map = new HashMap<String, Integer>() {{ put("one", 1); }}; 名前をつけずに初期化できるんで、スクリプト言語みたいにそのまま引数にわたしたりできる。 括弧が2つあって何かと思ったが、初期化子だったのか。 変な書き方だけど有名なのかな。1ペアならCollections.singletonMap()でいいんだけど。 Map<String, Integer> map = new HashMap<String, Integer>() { { put