我们几乎都在64位机器和JVM上,RAM很便宜,性能很少以低级JVM问题为中心。
那么为什么不是每个人都停止使用int并在Java和持久(数据库)存储中完全移动到64位长。
我知道我永远不会有2 ^ 64个用户,也不会有2 ^ 64种语言,如果我在零售帝国开设2 ^ 64家商店,我目前还没有建立我认为我可以买自己的大陆并退休。
除了“你不需要64位数字来存储所有可能的宠物商店ID”之外,还有其他缺点......?
答案 0 :(得分:6)
无论当今机器的平均RAM容量是否增加,当您确定所代表的数据永远不会超过int的大小时,为什么会浪费?
这是一个例子:我有一个包含10个用 int 基元表示的实例变量的类。在我的服务器上运行此类可能有无数个实例。如果我使用 longs 代替(并且不需要它们),如果这些对象实例存储在关系数据库中,我将浪费RAM和硬盘空间。
所以为了回答你的问题,你可以保持对内存的保守性,这可以更具可扩展性。