java如何使函数内部的变量不释放内存
答案:6 悬赏:40 手机版
解决时间 2021-03-29 05:54
- 提问者网友:皆是孤独
- 2021-03-28 16:53
java如何使函数内部的变量不释放内存
最佳答案
- 五星知识达人网友:掌灯师
- 2021-03-28 17:03
一个变量保存100个值!!!-----先不谈gc的释放内存。
String test = new String();//这样是在内存中开辟了一块空间保存test。、、仅仅是一块空间!
保存100个值的时候、如:
test="1";
test="2";...........
//结果是:在内存中的test值是2,第二次赋值会覆盖掉第一次赋的值。
所以test变量值保存一个值。---最后一次赋的值。
在函数外部创建一个一维数组。String[] arr = new String[100];
每一次给test赋值的时候,在arr数组中将test的值保存一份。
这样当函数调用完毕的时候,100个变量还在的。。。
String test = new String();//这样是在内存中开辟了一块空间保存test。、、仅仅是一块空间!
保存100个值的时候、如:
test="1";
test="2";...........
//结果是:在内存中的test值是2,第二次赋值会覆盖掉第一次赋的值。
所以test变量值保存一个值。---最后一次赋的值。
在函数外部创建一个一维数组。String[] arr = new String[100];
每一次给test赋值的时候,在arr数组中将test的值保存一份。
这样当函数调用完毕的时候,100个变量还在的。。。
全部回答
- 1楼网友:北城痞子
- 2021-03-28 22:22
java中gc是虚拟机运行中自动回收内存的,只有控制gc来强制回收的方法,没有让gc不执行的方法
- 2楼网友:拾荒鲤
- 2021-03-28 21:32
如果是递归调用的话,这100个变量已经全部压栈,在调用完毕之前都是存在的
- 3楼网友:轮獄道
- 2021-03-28 20:34
设置成static 类型
- 4楼网友:封刀令
- 2021-03-28 19:10
不可能,1个变量不可能保存这100个值。
何时被内存释放,谁都不知道。
如果想被使用,必须有指向的变量,否则会被释放掉。
你只能找100个变量来把这100个值存起来。
何时被内存释放,谁都不知道。
如果想被使用,必须有指向的变量,否则会被释放掉。
你只能找100个变量来把这100个值存起来。
- 5楼网友:有你哪都是故乡
- 2021-03-28 18:30
找个数组或list装起来
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯