当我写这个
String[] fruits = {"Apple", "Pear"};
我希望在编译时创建数组和字符串,就像 C 中的类似代码一样。它正确吗?数组及其内容通常是在编译时还是在运行时创建的?
当我写这个
String[] fruits = {"Apple", "Pear"};
我希望在编译时创建数组和字符串,就像 C 中的类似代码一样。它正确吗?数组及其内容通常是在编译时还是在运行时创建的?
创建数组,它们是 Java 中的对象。这只能在运行时发生。
请注意,许多对象是在 Java 程序中创建的,并且您的对象创建仅在 VM 本身初始化之后发生。一个静态数组初始化不会给你的表演带来明显的负担。
如果您不更改数组并且您有很多实例,请务必将其声明为 static :
static String[] fruits = {"Apple", "Pear"};
还要注意与静态编译数组的一个重要区别:java 数组是可变的。你不能改变它的长度,但你可以改变它的元素(或使它们无效)。java 数组,即使是最终的静态数组,也不是真正的常量。