动态分配Java数组意味着什么?
我知道如何用Java构建数组,非常简单。我只是想弄清楚,动态分配Java数组究竟意味着什么。提前感谢您的帮助 既然您了解了如何用Java构建数组,您就会注意到您可以这样做动态分配Java数组意味着什么?,java,Java,我知道如何用Java构建数组,非常简单。我只是想弄清楚,动态分配Java数组究竟意味着什么。提前感谢您的帮助 既然您了解了如何用Java构建数组,您就会注意到您可以这样做 int[] x = new int[someVariable]; 这将创建一个大小在编译时未知的数组,这意味着编译器无法分配数组或数组的空间,但必须在运行时(即动态)分配。因此,当这一行代码执行时,堆上的一些对象将被创建,当不再使用时,正常的垃圾收集机制将最终清理它 在Java中,同样的动态机制也用于在编译时已知大小的数组,
int[] x = new int[someVariable];
这将创建一个大小在编译时未知的数组,这意味着编译器无法分配数组或数组的空间,但必须在运行时(即动态)分配。因此,当这一行代码执行时,堆上的一些对象将被创建,当不再使用时,正常的垃圾收集机制将最终清理它
在Java中,同样的动态机制也用于在编译时已知大小的数组,但在理论上——以及在其他语言中——存在静态分配的数组。既然您了解如何在Java中构建数组,您就会注意到您可以这样做
int[] x = new int[someVariable];
这将创建一个大小在编译时未知的数组,这意味着编译器无法分配数组或数组的空间,但必须在运行时(即动态)分配。因此,当这一行代码执行时,堆上的一些对象将被创建,当不再使用时,正常的垃圾收集机制将最终清理它
在Java中,同样的动态机制也用于在编译时已知大小的数组,但在理论上——以及在其他语言中——存在静态分配的数组
动态分配Java数组意味着什么
这种目的并不常见。
我想说,这是相当正确的,但在上下文中有点误导。
在Java中,所有对象、类、原语都是在运行时分配的:编译时实际上没有分配任何东西。
因此,是的,数组也是动态分配的,但动态分配并不意味着一定可以调整大小:正如证据所示,ArrayList和数组是在运行时分配的,但只有前者可以调整大小
动态分配Java数组意味着什么
这种目的并不常见。
我想说,这是相当正确的,但在上下文中有点误导。
在Java中,所有对象、类、原语都是在运行时分配的:编译时实际上没有分配任何东西。
因此,是的,数组也是动态分配的,但动态分配并不意味着一定可以调整大小:正如证据所示,ArrayList和数组是在运行时分配的,但只有前者可以调整大小 太棒了,提洛,谢谢你的回答!太棒了,提洛,谢谢你的回答!