我的一个朋友注意到了
var<Integer> list = new ArrayList<Double>();
Run Code Online (Sandbox Code Playgroud)
在 Java 中有效。事实证明, 的类型list被评估为ArrayList<Double>。
使用时var<Integer> list = new ArrayList<>();,list就是ArrayList<Object>。
我们俩都无法弄清楚泛型类型的var作用,因为它似乎被忽略了。但如果是这样,为什么这首先在语法上是正确的?