gpt4 book ai didi

java - 列表与列表<对象>?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:56:02 25 4
gpt4 key购买 nike

请解释List之间的区别是什么? - 原始类型和 List<Object> .

下面的代码给出了运行时错误:

public static void main(String[] args) {
List<String> strings = new ArrayList<String>();
unsafeAdd(strings, new Integer(42));
String s = strings.get(0); // Compiler-generated cast
}
private static void unsafeAdd(List list, Object o) {
list.add(o);
}

这会产生编译时错误:

public static void main(String[] args) {
List<String> strings = new ArrayList<String>();
unsafeAdd(strings, new Integer(42));
String s = strings.get(0); // Compiler-generated cast
}
private static void unsafeAdd(List<Object> list, Object o) {
list.add(o);
}

最佳答案

在第二种情况下,你正在做一些编译器可以解决的事情是不安全的。在第一种情况下,您使用的是原始类型,因此编译器不会执行相同的检查。

关于java - 列表与列表<对象>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21911871/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com