gpt4 book ai didi

java - 为什么不为泛型自动装箱 Java 基本类型?

转载 作者:搜寻专家 更新时间:2023-10-31 19:49:19 24 4
gpt4 key购买 nike

Java 不允许在通用数据结构中使用基本类型。例如。 ArrayList 是不允许的。原因是,原始类型不能直接转换为 Object。但是 Java 1.5 确实支持自动装箱,并且包装类在通用数据结构中工作。那么为什么编译器不能自动将它装箱到 ArrayList 中呢?还有其他原因导致这不起作用吗?

最佳答案

据我了解,您提出的ArrayList<int>将与 ArrayList<Integer> 相同.是对的吗? (换句话说,它在内部仍然存储一个整数;每次你放入或取出东西时,它都会自动装箱/拆箱,但自动装箱/自动拆箱已经为 ArrayList<Integer> 完成了。)

如果相同,那么我不明白重复语法有什么用 <int>是当它与 <Integer> 的含义相同时. (事实上​​它会引入额外的问题,因为例如 int[]Integer[] 不是相同的运行时类型,所以如果你有 T[] ,并且 Tint ,这意味着什么?)

关于java - 为什么不为泛型自动装箱 Java 基本类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7036552/

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