整数类型用来存储整数数值,即没有小数部分的数值。整数类型可以是正数,也可以是负数。整型常量在Java程序中有3种表示形式,分别为十进制、八进制和十六进制。
l 十进制
十进制是Java语言默认的数制,所以使用正常的表示形式,例如,120、0、-127、340。
注意:不能以0作为十进制数的开头(0除外)。
l 八进制
八进制的表现形式以最高位的数字0做区分,如果最高位不是0,那么Java将把它解释为十进制,否则解释为八进制。例如,0123(转化成十进制数为83)、-0123(转化成十进制数为-83)。
说明:八进制的最大单个数字是7,7再加1就是10,它和十进制的8是相等的。八进制的字面量包括“0、1、2、3、4、5、6、7”。例如,0123(转化成十进制数为83)、-0123(转化成十进制数为-83)
注意:八进制必须以0开头。
l 十六进制
十六进制的表现形式是在数的最高位添加“0x”标识,其中“x”字符不区分大小写。例如,0x25(转化成十进制数为37)、0Xb01e(转化成十进制数为45086)。
说明:十六进制主要用于二进制的简化表达方式,十六进制的1位数字可以转换成4位二进制数字。超出9的数字在十六进制中以字母表示,其字面量包括“0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F”,其中“A~F”分别代码十进制的“10~15”。例如:0x25(转化成十进制数为37)、0Xb01e(转化成十进制数为45086)
注意:十六进制必须以0X或0x开头。
整型变量根据它在内存中所占大小的不同,可分为byte、short、int和long4种类型。它们具有不同的取值范围,如表1所示。
表1 整型数据类型
数据类型 |
内存空间(8位等于1字节) |
取值范围 |
byte |
8位 |
-128~127 |
short |
16位 |
-32768~32767 |
int |
32位 |
-2147483648~2147483647 |
long |
64位 |
-9223372036854775808~9223372036854775807 |
下面以int型变量为例,介绍整型变量的定义格式。
实例 定义int型变量,实例代码如下:
int m; //定义int型变量m
int x,y; //定义int型变量x,y
int a = 450,b = -462; //定义int型变量a,b并赋给初值
在定义以上4种类型变量时,要注意变量的值不能超过变量所能接受的最大值与最小值,否则会出现错误。Java默认的整数类型是int,如果要标记整数是long类型,必须在数字末尾添加字母L或l(小写的L)。例如 long num
=
说明:在数字末尾添加L或l(小写的L)标识long类型整数,一般都发生在整数大于int最大取值范围时。因为Java默认的整数类型是int。
实例 在项目中创建类Number,在主方法中创建不同数值型变量,并将这些变量相加,将和输出。
public class Number { //创建类
public static void main(String[] args) { //主方法
byte mybyte = 124; //声明byte型变量并赋值
short myshort = 32564; //声明short型变量并赋值
int myint = 45784612; //声明int型变量并赋值
long mylong = 46789451; //声明long型变量并赋值
long result = mybyte+myshort+myint+mylong; //获得各数相加后的结果
System.out.println("结果为:"+result); //将以上变量相加的结果输出
}
}
程序行结果如图1所示。
图1 实例的运行结果