首页 理论教育 零基础Java从入门到精通

零基础Java从入门到精通

时间:2023-10-19 理论教育 版权反馈
【摘要】:动手写3.3.1动手写3.3.1的运行结果为:图3.3.1byte类型示例2.short类型short数据类型占用内存16位,有符号,并以二进制补码表示整数,占2字节内存。动手写3.3.3动手写3.3.3的运行结果为:图3.3.3int类型示例int类型为Java中整数类型的默认数据类型,代码中可以直接使用数字,此时Java都会认为是int类型的数值。动手写3.3.7其运行结果为:图3.3.7整型包装类中的常量提示二进制的表示是在JDK 1.7中引入的,早期版本并不支持。

零基础Java从入门到精通

Java提供了四种整数类型,用来存储整数数值(即没有小数位数的数值),分别是byte、short、int和long。这些类型既可以存储正数数值,也可以存储负数数值,负数可以在前面加上“-”符号表示。

不同的类型取值范围是不同的,在系统中所占内存大小也是不同的。下面分别对这几种基本整数类型进行介绍。

1.byte类型

byte数据类型占用内存8位,有符号,并以进制补码表示整数,占1字节内存。

◇ 最小值是-128(即-27)。

◇ 最大值是127(即27-1)。

◇ 默认值是0。

◇ byte类型占用的空间只有int类型的四分之一。

动手写3.3.1动手写3.3.1的运行结果为:

图3.3.1 byte类型示例

2.short类型

short数据类型占用内存16位,有符号,并以二进制补码表示整数,占2字节内存。

◇ 最小值是-32768(即-215)。

◇ 最大值是32767(即215-1)。

◇ 默认值是0。

◇ short类型占用的空间只有int类型的二分之一。

动手写3.3.2

动手写3.3.2中,x赋值的数值由于超过了short类型的存储最大值,造成数据的溢出编译失败,其运行结果为:

图3.3.2 short类型溢出示例

3.int类型

int数据类型占用内存32位,有符号,并以二进制补码表示整数,占4字节内存。

◇ 最小值是-2147483648(-231)。

◇ 最大值是2147483647(231-1)。

◇ 默认值是0。

动手写3.3.3

动手写3.3.3的运行结果为:

图3.3.3 int类型示例

int类型为Java中整数类型的默认数据类型,代码中可以直接使用数字,此时Java都会认为是int类型的数值。

动手写3.3.4

(www.xing528.com)

动手写3.3.4的运行结果为:

图3.3.4 整数类型默认为int类型

4.long类型

long数据类型占用内存64位,有符号,并以二进制补码表示整数,占8字节内存。long类型的数值需要在数字结尾加上“L”(大小写并不区分,但是因为小写l与数字1很像,容易混淆,建议使用大写字母L)。

◇ 最小值是-9223372036854775808(-263)。

◇ 最大值是9223372036854775807(263-1)。

◇ 默认值是0L。

动手写3.3.5

动手写3.3.5中,定义了long类型的变量number、x和y。x的数值计算中没有写“L”来标识是long类型,则Java会默认将两个数值认为是int类型来进行相乘计算,这会造成数值溢出int最大值,结果为一个负数,然后将这个负数强制转换为long类型。而y的计算因为数值加上了“L”,没有发生溢出和强制转换的过程。其运行结果为:

图3.3.5 long类型定义和错误赋值方式

提示

在使用以上四种整型类型时,要注意存储的数值的取值范围,如果超出范围(大于类型的最大值或是小于类型的最小值),都会造成类型存储的溢出,感兴趣的读者可以尝试给byte类型赋值-129看会导致什么样的结果。另外,对于程序来说内存是很宝贵的,合理使用不同的类型来存储数值是一个健壮程序的基础。

整型数据的值一般都使用十进制,前面的示例中都是十进制数值,而且十进制不能以“0”为开头。数值还可以使用二进制、八进制十六进制,都可以在前面加上负号表示负数。

◇ 默认十进制为表示方法。

◇ 在数字前面加上数字0,表示八进制。

◇ 在数字前面加上0x,表示十六进制。

◇ 在数字前面加上0b,表示二进制。

动手写3.3.6

动手写3.3.6表明,非十进制的数值在系统输出时都会被默认转换成十进制,如果想要保留原来的格式,可以将这些数值转换成字符串输出,其运行结果为:

图3.3.6 多种进制整数的使用

要使用八进制表达,数字前必须加上0(零)。要使用十六进制表达,数字前必须加上0x。要使用二进制表达,数字前必须加上0b。

对于不同位数的操作系统,整型的长度也不同。对于32位的操作系统,整型的有效范围是-2147483648~2147483647;对于64位的操作系统,整型的有效范围是-9223372036854775808~9223372036854775807。在Java中,整型的最大值和最小值已经定义在对象的包装类(后续章节将对常用类进行介绍),可以被直接使用。

动手写3.3.7

其运行结果为:

图3.3.7 整型包装类中的常量

提示

二进制的表示是在JDK 1.7中引入的,早期版本并不支持。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈