1. int[] a = new int[3];
2:String[] str1 = new String[3]
3:String[] str2 = {"1","2","3"}
请问,a, str1, str2 分别是在堆还是栈中.
如果a str1都在堆中,我想让下面的strArray数组存在栈中,下面的语句改怎么改写。
String[] strArray = new String[size];
for (int i = 0; i < size; i ++){
strArray[i] = "xxx";
}不能写成:String[] strArray = {"","",""}; 我不知道size的大小.
2:String[] str1 = new String[3]
3:String[] str2 = {"1","2","3"}
请问,a, str1, str2 分别是在堆还是栈中.
如果a str1都在堆中,我想让下面的strArray数组存在栈中,下面的语句改怎么改写。
String[] strArray = new String[size];
for (int i = 0; i < size; i ++){
strArray[i] = "xxx";
}不能写成:String[] strArray = {"","",""}; 我不知道size的大小.
我理解的是引用在栈中,内容在堆中,而字符串用“”直接创建的话在常量区吧
你创建的数组引用strArray在栈中,你的意思是把数组的具体变量值放到栈中吗
...等下面的高手
基本类型是分配在栈中,例如:int a, String s = "";
对象类型分配在堆中:例如:Object obj, String s = new String();
new创建的对象是在堆中,但对int[] a = new int[3]表示怀疑,是在堆中???接下来参数的问题:不通过new怎么创建数组String[size] (即是:不想此变量存在堆中,太耗内存,有70000多此数据需要处理)
int[] a = new int[3]
应当是存放在栈中·
int[] a = new int[3]
应当是存放在栈中·
int[] a = new int[3]
应当是存放在栈中·