Java基础(一)----------Java基本数据类型ava

1.说明

Java数据类型分为2类:基本数据类型引用数据类型

此图根据mzzcy博客里的图,重新画的。

2.基本数据类型

借鉴了Ideality_hunter的博客。

此图取自chancaoer的博客。

2.1.整数型(byte、short、int、long)

(1)byte:一个字节,8位二建制,最小的数据单位。

(2)shor:16位,很少有。

(3)int:32位,整数字面量默认为int类型。int i=5;小于32位的都用int。

(4)long:64位,long型数据后面加L或l。

2.2.浮点型(float、double)

(1)float:32位,后缀F或f,1位符号位,8位指数,23位有效数。float型数据后面加F或f.

(2)double:64位,后缀D或者d,1位符号位,11位指数,52位有效数。浮点数字面量默认为double类型

(3)float型最大值大于long型原因:ong整型数,在内存中占用8个字节共64位,它表示的数值有2的64次方,平分正负,数值范围是负2的63次方到正2的63次方-1。浮点数的32位不是简单的直接表示大小,而是按照一定的标准分配的。其中第1位,符号位,即S。接下来的8位,指数域,即E。剩下的23位,小数域,即M,M的取值范围为[1,2)或[0,1)。浮点数在内存中的二进制值不是直接转换为十进制数值的,而是按照:V=(-1)^s * M * 2^E。公式计算而来,通过这个公式,虽然只用到了4个字节,但是浮点数却比长整型的最大值要大。

菜鸟--小新的博客里面说得很清楚。

2.3.逻辑型(boolean)

boolean类型数据只允许取值真:true 或者假:false。

2.4.字符型(char)

char:16位,是整数类型,用单引号括起来的一个字符(也可以是一个中文字符),使用Unicode码代表字符,不能为0个字符,转义字符\n换行,\r回车,\t table字符,\"双引号,\\表示一个\,两个字符char中间用"+"连接,内部把字符转成int类型,再进行加法运算,char本质是个数!二进制的,显示的时候经过“处理”显示为字符。

2.5.类型转换

赋值和方法调用 转换规则:从低位类型到高位类型自动转换;从高位类型到低位类型需要强制类型转换:

(1)布尔型和其它基本数据类型之间不能相互转换。 

(2)byte型可以转换为short、int、、long、float和double。 

(3)short可转换为int、long、float和double。 

(4)char可转换为int、long、float和double。 

(5)int可转换为long、float和double。 

(6)long可转换为float和double。 

(7)float可转换为double。 

此处引用mzzcy的基本类型转换原则。

 

 

2.6.注意

String 不属于基本数据类型,java 中是个对象,是引用类型。

猜你喜欢

转载自blog.csdn.net/qq_36004677/article/details/86282326