未经检查的 'java.util.ArrayList' 赋值

13

我收到了以下警告:

将 'java.util.ArrayList' 赋值给 'java.util.ArrayList < com.test.mytest >' 没有进行类型检查

出现在:

private ArrayList<LocoList> myLocations = new ArrayList();

如何修复它?


是的,你说得对。谢谢! - gogoloi
简单,不要使用原始类型。 - Lew Bloch
1个回答

23

你需要使用new ArrayList<>();以便使用正确的泛型类型。目前你正在使用=右侧的原始类型。所以你需要:

private ArrayList<LocoList> myLocations = new ArrayList<>();

或者直接明确:

private ArrayList<LocoList> myLocations = new ArrayList<LocoList>();

除非你正在使用 ArrayList 特有的成员,否则你可能还要考虑将变量的类型从 ArrayList<LocoList> 更改为 List<LocoList>。我个人认为,你也可以放弃 "my" 前缀。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接