java 7中的diamond操作符允许如下代码:
List<String> list = new LinkedList<>();
然而在Java 5/6中,我可以简单地写:
List<String> list = new LinkedList();
我对类型擦除的理解是它们是完全相同的。(无论如何泛型都会在运行时被删除)。
为什么要为钻石费心呢?它允许哪些新的功能/类型安全?如果它没有产生任何新的功能,他们为什么要把它作为一个特性来提及呢?我对这个概念的理解有缺陷吗?