通常所说的整型,实际指的是如下4种类型。
➢ byte : 一 个 byte 类 型 整 数 在 内 存 里 占 8 位 , 表 数 范 围
是-128(-27)~127(27-1)。
➢ short:一个short类型整数在内存里占16位,表数范围
是-32768(-215)~32767(215-1)。
➢ int : 一 个 int 类 型 整 数 在 内 存 里 占 32 位 , 表 数 范 围
是-2147483648(-231)~2147483647(231-1)。➢ long:一个long类型整数在内存里占64位,表数范围是(-263)
~(263-1)。
int是最常用的整数类型,因此在通常情况下,直接给出一个整数
值默认就是int类型。除此之外,有如下两种情形必须指出。
➢ 如果直接将一个较小的整数值(在byte或short类型的表数范
围内)赋给一个byte或short变量,系统会自动把这个整数值当
成byte或者short类型来处理。
➢ 如果使用一个巨大的整数值(超出了int类型的表数范围)
时,Java不会自动把这个整数值当成long类型来处理。如果希
望系统把一个整数值当成long类型来处理,应在这个整数值后
增加l或者L作为后缀。通常推荐使用L,因为英文字母l很容易
跟数字1搞混。
下面的代码片段验证了上面的结论。
注意:
可以把一个较小的整数值(在int类型的表数范围以内)直接赋
给一个long类型的变量,这并不是因为Java会把这个较小的整数值
当成long类型来处理,Java依然把这个整数值当成int类型来处理,
只是因为int类型的值会自动类型转换到long类型。
在程序中直接给出的整型数值,可分为二
进制、十进制、八进制和十六进制4种,其中二进制需要以0B或
0b开头,八进制需要以0开头,十六进制需要以0x或0X开头。例
如123、012(对应十进制的10)、0x12(对应十进制的18)
等。
版权归原作者 Mars_prime 所有, 如有侵权,请联系我们删除。