gpt4 book ai didi

java - 为什么 ArrayList 实现使用 Object[]?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:12:06 25 4
gpt4 key购买 nike

在 Java 中 ArrayList<E>基于对象数组的实现。
有人能解释一下为什么要执行ArrayList<E>吗?使用数组 Object[]用于数据存储而不是 E[] ?使用Object[]有什么好处? ?

最佳答案

在 Java 中,创建泛型数组并不简单。

简单的方法不编译:

public class Container<E> {

E[] arr = new E[3]; // ERROR: Cannot create a generic array of E

}

E 替换为 Object,一切都很好(代价是在容器实现的其他地方增加了复杂性)。

有多种替代方法,但它们呈现出一组不同的权衡。有关广泛的讨论,请参阅 How to create a generic array in Java?

关于java - 为什么 ArrayList 实现使用 Object[]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13776576/

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