它们的内存分布如下:
?
一般程序在加载到内存地址空间后,会被划分为4个部分,全局数据段、代码段、堆、栈。而全局代码段是用来存放全局变量的。...在C中如果我们写下这样的代码:
char* psz1 = "abc";
char* psz2 = "abc";
那么在程序加载到内存中时,在全局数据段中会存在一个连续的内存空间保存的是 'a','b',...这样就很容易理解上面的前两条了,至于字符串不可变,可以参考我之前写的关于类型中的说明(字符串的值发生改变时,在内存中其实是开辟了一块新的内存用于保存新的字符串内容,而丢弃了从前的字符串)
常见字符串方法...5, 6, 7,8, 9, 0}; //创建数组并初始化
int[] Array3 = {1,2 ,3,4,5,6,7,8,9,0};
相比于C中数组的定义来说,Java中的定义更容易让人理解,对应数据类型后面加一对...,然后回车,然后程序继续执行,在循环中根据空格,依次从里面取出每一个值,并放到容器中。