定义
整型数据用于表示没有小数部分的数值。它可以用来表示负数,但不能用来表示小数。
Java中的整型
在初学者的理解中,Java
中的整型就是int型数据,其实不然,Java中有四种整型数据,分别是byte
, short
, int
, long
。 它们的区别表现在单个数据所占的字节数以及取值范围的不同。具体见下表。
类型 | 字节数 | 取值范围 |
---|---|---|
byte | 1 | -128~127 |
short | 2 | -32768~32767 |
int | 4 | -2147483648~2147483647 |
long | 8 | -9223372036854775808~9223372036854775807 |
值得一提的是,在Java
中,没有无符号位的整型数据,即所有的整型数据都是可以表示正数和负数的。
进制
和其他编程语言一样,Java中常用的进制位二进制、八进制、十进制、十六进制。其实八进制也不是太经常使用。
二进制
二进制的表示只包含0和1两种符号。在Java中,二进制的表示格式为:
int x = 0b10101010
即在二进制数前面加了0b
.
八进制
八进制的表示包含0、1、2、3、4、5、6、7这八种符号。在Java中,八进制的表示格式为:
int x = 01010101010
即在八进制数前面加了0
. 显然这种表示方法很容易弄混,一定得小心对待。
十进制
十进制即为日常数字使用的进制,它的表示包含0、1、2、3、4、5、6、7、8、9这十种符号。十进制的表示不需要特别的格式,和平时使用的数字表示一样。但是
十六进制
十六进制的表示包含0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f这十六中符号。在Java中,十六进制的表示格式为:
int x = 0x10101010
即在十六进制数前加0x
.
在任何进制表示的数字后面加上符号L
即表示该数字为long
型。此外, 从Java 7
以后,表示二进制、八进制、十进制、十六进制数的时候,可以在数中添加下划线以方便阅读。经过尝试,发现在数的最前面和最后面添加下划线是会报错的,即下划线只能添加在数的中间,不能加在数字的两端。
int a = 0b1010_1010
int b = 01010_1010
int c = 1010_1010
int d = 0x1010_1010