我有一些像这样的代码:
@SuppressWarnings({"unchecked", "rawtypes"})
List<String> theList = new ArrayList();
Run Code Online (Sandbox Code Playgroud)
这种类型安全吗?我认为这是安全的,因为我没有将原始类型分配给其他任何东西.我甚至可以证明它在我打电话时执行类型检查add:
theList.add(601); // compilation error
Run Code Online (Sandbox Code Playgroud)
我读过"什么是原始类型,我们为什么不使用它?" 但我认为它不适用于此,因为我只使用原始类型创建列表.之后,我将其分配给参数化类型,那么可能出现什么问题?
还有,这个怎么样?
@SuppressWarnings({"unchecked", "rawtypes"})
List<String> anotherList = new ArrayList(theList);
Run Code Online (Sandbox Code Playgroud)