List の初期化は Arrays.asList() が可変長引数取るようになって、
List<String> list = Arrays.asList("a,b,c,d,e,f".split(","));
のように少し書きやすくなった。
Set についても同様で例えば、
Set<Integer> set = new LinkedHashSet<Integer>(Arrays.asList(4, 8,15,16,23,42));
のように書ける。
Google Collections Library の Lists.newArrayList とか Sets.newHashSet() とか使う方がスマートだけど・・
で、Mapも同じように初期化できないもんかなー。匿名の内部クラスで初期化、
Map<String, Integer> map = new HashMap<String, Integer>() {{ put("one", 1); put("two", 2); put("three", 3); }};
は悪魔だし、、
Map<String, Integer> map = Maps.asMap({"one"=>10, "two"=>2, "three"=>3});
とか、
Map<String, Integer> map = Maps.asMap({"one",10},{"two",2},{"three",3});
とか書きたいな〜