2

这两个数字在内存中都占用 8 字节(64 位)吗?长a=25L 长b=3543451651313213232168498L

4

7 回答 7

5

是的,大小是根据语言规范固定的:

整数类型为 byte、short、int 和 long,其值分别为 8 位、16 位、32 位和 64 位有符号二进制补码整数 [...]。

于 2013-07-30T07:55:59.760 回答
2

long 的大小是预先确定的,它不会根据存储的数字而改变。

于 2013-07-30T07:54:46.883 回答
1

long 需要 8 个字节,无论它包含零(所有位 0)还是 -1(所有位 1)。

于 2013-07-30T07:54:54.060 回答
0

是的,原语是固定大小的,不依赖于它们包含的值!

于 2013-07-30T07:55:39.063 回答
0

是的,它需要相同的数量。

长值(偶数0L)占用 64 位(或 8 个字节)。

于 2013-07-30T07:55:46.503 回答
0

是的,两者都占用 8 个字节。问自己一个问题,如何区分 32 位整数和“半满”64 位长。

于 2013-07-30T07:56:51.737 回答
0

是的,两者都占用相同的空间。在 Java 中,基元会根据基元的类型分配一个常量空间。另一方面,随着时间的推移,对象可能会占用可变数量的空间。

于 2013-07-30T07:56:54.760 回答