可能重复:
Double brace initialisation (anonymous inner class) with diamond operator在Java7的钻石,澄清需要
使用Java 7,为什么是一个问题
final List<String> a = new ArrayList<>() {
{
add("word");
}
};
显式类型声明需要如下在
final List<String> a = new ArrayList<String>() {
{
add("word");
}
};
+1嗯,我绝对相信'<>'是关于推理!它用于工厂方法的方式。 –
+1完美解释 – AlexR
钻石并非原始打字。它会进行类型推断和类型检查。 – irreputable