Java7 でダイヤモンド演算子が必要な理由を知りたいです。コレクション API に追加できる単純な静的ジェネリック メソッドを使用して、この動作をシミュレートできます。
HashMap のメソッドのコード:
public static <R, S> HashMap<R, S> getInstance() {
return new HashMap<R, S>();
}
そして、次のように使用できます。
Map<String, List<String>> m = HashMap.getInstance();
この動作を試すことができる場合は、次のようにコーディングします。
import java.util.HashMap;
import java.util.Map;
import java.util.List;
import java.util.Arrays;
public class Diamond {
public static void main(String... args) {
Map<String, List<String>> m = getInstance();
m.put("Hello", Arrays.asList("Peter", "Robert"));
System.out.println(m.toString());
}
public static <R, S> HashMap<R, S> getInstance() {
return new HashMap<R, S>();
}
}