java 代码为啥报错:未经检查的转换 ArrayList<Car> b=(ArrayList<Car>)getA(); ?
书上的解释, 我没看懂 。
回答:
就是你的方法返回没有指定类型,现在你强转成了指定的类型,但是编译器是不认识你里面的代码的,不知道你到底写了什么类型,所以会报让你加一个unchecked,让他不需要去检查你的类型是否正确
回答:
这只是范型警告而已,不是报错。
等你后面学了范型之后再回看这里就知道怎么改可以没有警告了
回答:
类型问题
x x x x x
回答:
编译时泛型内部类型会丢失。解决这个问题的思路有:
List<Car> c = new ArrayList<>();for (Object o : getA()) {
c.add((Car) o);
}
回答:
这个只是个警告,不影响编译,只是警告你要确保类型一致,如果你最终返回的类型和你需要转换的类型不一致,才会导致运行出错,这个警告也可以在 inspections 中关闭。
回答:
public static ArrayList<Car> getA() {
}
以上是 java 代码为啥报错:未经检查的转换 ArrayList<Car> b=(ArrayList<Car>)getA(); ? 的全部内容, 来源链接: utcz.com/p/944917.html