gpt4 book ai didi

java - 按下按钮时 Android 内存使用量增加

转载 作者:行者123 更新时间:2023-11-29 20:33:50 25 4
gpt4 key购买 nike

我正在创建一个计算器应用程序,以便熟悉 Java(刚开始学习)和 Android SDK。我有一个关于内存使用的问题。每当我点击“=”按钮时,每次点击都会增加大约 0.03 MB 的内存(即使在结果变量读取“Infinity”之后)。当我达到堆限制时,它下降了大约 8 MB。在 = 按钮上调用的方法是这样的:

public double calculate() {
switch(_op) {
case '/':
result = _firstnum / _secondnum;
break;
case '*':
result = _firstnum * _secondnum;
break;
case '-':
result = _firstnum - _secondnum;
break;
case '+':
result = _firstnum + _secondnum;
break;
}

_firstnum = result;

return result;
}

如您所见,我没有创建任何变量或对象。所有引用的变量都已经声明和初始化。这个方法只是简单的算术运算,为什么会增加内存?

最佳答案

内存使用增加“0.03MB”是公平

当您按下“=”按钮时,该方法会执行算术运算。该操作是轻量级的,但它不是您应用中当时发生的唯一事情

每当您触摸屏幕时,都会拦截触摸事件并采取所需的操作。也可以重新绘制 View 以显示结果。 幕后还有许多其他小的 Android 进程。

所以,这里绝对没有什么可担心的。当系统认为合适时,它会自动垃圾收集不需要的对象并释放堆。

关于java - 按下按钮时 Android 内存使用量增加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31613500/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com