基本数据类型有哪些,java的基本数据类型详解,今天来介绍一下Java的八种基本数据类型,这些也是Java的基础,需要大家了解与掌握。
具体内容有以下几方面:
1、八种基本数据类型的介绍
2、整型
3、浮点型
我们前边讲到,变量的本质是可操作的存储空间,变量很像停车位,数据很像车,那么数据类型就是定义车位的大小,如有的停车位可以停家用小客车,有的停车位可以停卡车,有的停车位可以停摩托车……这样就可以更有效的去管理停车位。
Java是一种强类型语言,每个变量都必须声明数据类型,Java的数据类型可以分为两大类,基本数据类型和引用数据类型,今天我们主要说一下八种基本数据类型,这八种数据类型又分为三大类,一是数值型,二是字符型,三是布尔型,这里数值型又分为整型跟浮点型,整型又分为:byte,short,int,long,浮点型分为double,float到这里同学们是不是觉得有点乱呢?下面画个图,帮助大家理解记忆。
接下来开始介绍整型的四种基本数据类型
1、byte,它占用1个字节的存储空间,表数范围在(-128~127)
2、short,它占用2个字节的存储空间,表数范围在(-32768~32767)
3、int,它占用4个字节的存储空间,表数范围在(大约正负21亿)
4、long,它占用8个字节的存储空间,表数范围在(大约正负2的63次方)
大家记住下面这张图,在这里思考一下,为什么1字节表数的范围是-128~127之间,2字节表数范围是-32768~32767之间?
注意一下,这里说的占用存储空间是字节byte,1个字节是8位,位是bit(比特),1位可以表示2个状态也就是0和1,‘位’也是计算机中最小的存储单位,1字节就是2的8次方,256个状态。
大家都知道,计算机内部是一个二进制的世界,也就是说计算机只能识别0和1,不论是指令还是数据,若想要存储在计算机中,都必须采用二进制的数的形式,即使想图片、声音这种信息,想要存储在计算机中也必须转成二进制数。
所以1byte也就是1字节,在计算机中只有0和1的256种状态,也就是表数中的范围-128~127之间,2字节,4字节依此类推……
这也就解释了变量是停车场,数据是车,数据类型就是不同大小的停车位,我们就可以按照数据的大小,来选择不同的数据类型,也就是不同大小的停车位来放置不同的数据。
我们通常可以听到多少多少KB,多少多少MB的大小,那么它们是什么含义呢?它们之间又是什么关系呢?这里我帮大家梳理了一下,如下图。
所以在程序员眼里,会把1024作为一个基本的单元,而为了纪念1024呢,程序员们把每年的10月24日,也会成为程序员节。
下面我们来实操一下,如下图。
这里可以看到,用int是不能表示世界70亿的人口的,也就是车太大了,停车位不够大,车停不进去,这样Java编译的时候就会报错。那我们也就只能用比int大的车位long来表达。
这里需要注意一下,改成long类型后,数值后边要加上:L/l(大写或小写‘L’)
下面我们再解释一下浮点型,如下图
1、float,它占用4个字节的存储空间,表数范围在(-3.40E38~3.40E38)
2、double,它占用8个字节的存储空间,表数范围在(-1.79E308~-1.79E308)
E38表示的是10的38次方,下同E308表示的是10的308次方,可以看出,float与double虽然分别只占4字节,8字节,但是表数范围却远远大于int与long,这是为什么呢?大家思考一下。
这里我给出答案,因为浮点数是不精确的,所以浮点型可以表数的范围更大。为啥这么说呢?不精确就可以表数的范围大?到底啥意思呢?也请大家先思考一下。
这里讲一下,指定范围内的整数是有限的,比如1~10,就是有限的整数。那么想一下,0~10之间的小数是有限的还是无限的?答案很显然,是无限的。那么用有限的空间存储无限的数据就必然会出现误差,也就是说浮点数不能精确表示
float是单精度的浮点型,尾数可以精确到7位有效数字。
double表示的精度是float的两倍,顾又称是双精度的浮点型,尾数可以精确到16位有效数字。大部分的应用程序都会使用double类型。
例如浮点常量默认就是double类型,比如3.14默认就是double类型。
大家这里可以看到,浮点常量默认就是double类型,如果转换成float会报错,如果要改成float类型,就要在常量后边加F/f,大写或小写‘F’,这样就会编译成功,如下图所示。
浮点型是不精确的,如果用于比较,我们就要当心了,下面再看一个例子。
这里可以看到f1为3.14,d1也是3.14,但为什么两者不相等呢?就是因为浮点型不是精确的,在这里不建议在比较中使用浮点型。
本文地址:百科问答频道 https://www.neebe.cn/wenda/886387.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!