在第一种情况下,
raw.getCollection()返回raw
Collection。 JLS
14.14.2指定了增强
for循环的类型检查:
如果Type(在FormalParameter生产中)是引用类型,则TargetType为Type;否则,Type为Type。否则,TargetType是I的类型参数
或Object(如果我是raw 的)的捕获转换的上限 。
(添加了重点)
在第二种情况下,您正在将原始类型显式分配给泛型类型,这可以通过正常警告来允许。

在第一种情况下,
raw.getCollection()返回raw
Collection。 JLS
for循环的类型检查:
如果Type(在FormalParameter生产中)是引用类型,则TargetType为Type;否则,Type为Type。否则,TargetType是I的类型参数
或Object(如果我是raw 的)的捕获转换的上限 。
(添加了重点)
在第二种情况下,您正在将原始类型显式分配给泛型类型,这可以通过正常警告来允许。