Java语法入门 ——基本数据类型

本文详细介绍了Java的8种基本数据类型,包括整数类型(byte, short, int, long)、浮点类型(float, double)、字符类型(char)和布尔类型(boolean),并阐述了它们的内存占用、数据范围以及浮点数的科学计数法表示。此外,还讨论了不同类型之间的转换规则,特别是自动类型转换和可能的风险。
摘要由CSDN通过智能技术生成

1.1 基本数据类型

Java有8种基本数据类型,分别是byte、short、int、long、float、double、char、boolean。这8种类型又可以划分为4个小类,每一个类型占据不同的内存空间,详细见下表:

image.png

整数类型

整数类型的最高位存放正负符号,1表示负、0表示非负,其余位置存放整数值。所以,根据不同整数类型的位数,我们可以推算出它的数据范围:

image.png

浮点类型

浮点类型采用科学计数法来表示数值,对于任意的小数,我们都可以采用统一的科学计数形式表示它。

0.0123 = 0.123 * 10^-1  12.345 = 0.12345 * 10^2 -123.45 = -0.12345 * 10^3

这种表示数字的形式包含三个要素:符号、指数、尾数。

image.png

浮点类型

就是将小数转换为科学计数法的形式,再将一串二进制的整数分为三段,分别存储小数的符号、尾数、指数。所以,float和double的表数范围如下:

image.png


字符类型
字符类型的本质也是整数,它采用16位的二进制整数来对字符进行编码,在Unicode字符集下,16位整数可以表示出65535个字符。其最小值为\u0000,最大值为\uffff。
布尔类型
布尔类型只包含两个值:true、false。所以实际上它只需要一位的存储空间即可,但Java虚拟机并没有规定布尔类型的具体实现,很多虚拟机实际是采用int来实现的布尔类型,这是出于性能的考虑。
类型转换
除了布尔类型之外,其余7种类型均为数字,所以它们之间可以相互转换。而转换的关键是数据类型的范围,下图给出了7种类型由小到大的数据范围。

image.png


由小到大地转换是没有风险的,可以直接转,这叫自动类型转换。由大到小转换则存在风险,很有可能会在转换时出现数据溢出的情况,所以需要进行强制转换。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值