数组创建问题

来源:百度知道 编辑:UC知道 时间:2024/06/01 10:41:46
数组分别在静态初始化和动态初始化后,使用时有什么区别啊?

对使用来说没什么区别。
但按编译来说是有先后顺序的。
String[] arrays = {"one", "two"};
是在这个类编译的时候就把这个数组的内存空间,就是地址给分配好了。同时把one,two字符串放到这些数组的内存空间里面。

而动态分配是在程序运行到这行程序段的时候才分配内存给这个数组,并把值放到分好的地址空间里面去。

String[] arrays = null; 这句话只是说明有一个叫数组arrays 的东西。

arrays = new String[2];
这句才是分配内存空间。

arrays[0] = "one";
arrays[1] = "two";这就是放内存空间里面放值。了。

静态初始化: String[] arrays = {"one", "two"};

动态初始化:
String[] arrays = null;

arrays = new String[2];
arrays[0] = "one";
arrays[1] = "two";

使用上没有区别