gpt4 book ai didi

java - 为什么这些在 Java 中无效?

转载 作者:搜寻专家 更新时间:2023-11-01 04:00:15 27 4
gpt4 key购买 nike

List<Object> myList = new ArrayList<String>(); //(hint: no)
Map<Integer> myMap = new HashMap<int>(); // (hint: also no)

为什么上述声明中的陈述是错误的?

最佳答案

让我们看第一个例子。想一想您应该能够对 List<Object> 执行的操作: 添加、删除、检索任何对象。

您正在尝试使用一个只能添加、删除和检索字符串的集合来满足这些要求。

List<Object> myList = new ArrayList<String>();

// This should be valid based on the List<Object> interface but obviously
// MyClass isn't String...so what would the statement do?
myList.add(new MyClass());

第二个原因很简单,因为 Java 中的泛型不支持原始类型。有关更多信息,您可以查看:

java - Why don't Generics support primitive types?

关于java - 为什么这些在 Java 中无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6280471/

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