这两个代码片段在内存使用和性能/开销方面有什么区别吗?
final float xPos = (CAMERA_WIDTH / 2) - (mSprite.getWidth() / 2);
final float yPos = (CAMERA_HEIGHT / 2) - (mSprite.getHeight() / 2);
mSprite.setPosition(xPos, yPos);
另一种情况:
mSprite.setPosition(((CAMERA_WIDTH / 2) - (mSprite.getWidth() / 2)), ((CAMERA_HEIGHT / 2) - (mSprite.getHeight() / 2)));
我能看到的唯一区别是第一个片段将变量存储在我认为与第二个片段不同的内存区域中,但我对 Java 内存分配不太熟悉(我更喜欢 C /C++ 人)。
我的问题是:一种方式或另一种方式有什么好处吗?在第一个示例中使用final
关键字是否会影响它?
谢谢!