java的八大基本类型和类型之间的转换

一、java的八大基本类型

四类:
	**1、整形**
类型 大小 范围
byte(字节类型) 1字节 -2^7 ~ 2^7-1
short(短整形) 2字节 -2^15 ~ 2^15-1
int(整形) 4字节 -2^31 ~ 2^31-1
long(长整型) 8字节 -2^63 ~ 2^63-1
**2、浮点型**
类型 大小 范围
float(单精度浮点数) 4字节 -2^128 ~ 2^128
double(双精度浮点数) 8字节 -2^1024 ~ 2^1024
**3、字符型**
类型 大小
char(字符型) 1字节
**4、布尔类型**
类型 大小
Boolean(布尔类型) 2字节
注意:
	(1)整数字面值是默认int类型来存储;如果整数字面值超过int类型,将类型转换为long类型,需要在数值后面加L或l后缀。但如果没超过int类型的范围,又需要用long类型来接收,则可以不加后缀.
	(2)浮点数字面值默认为double,如果想要使用float类型来存储浮点数字面值,则需要在其后加F或者f.
	   double类型是浮点数常用的类型;double类型的字面值后面可以加D或者d,也可以不加.
	   浮点型存储数据可能有精度损失.
	(3)字符类型的数据可以通过int类型的数字来表示,通过ASCII码表转换为对应的值.
	(4)Boolean类型的值只能是true或者false,默认为true.
	(5)基本数据类型都是关键字.

二、基本数据类型之间的转换

1、**自动类型转换**
	数值型:从小到大
		整数:byte->short->int->long
		浮点型:float->double
			float自动转为double类型可能有精度损失.
		整形->浮点数
			直接在后面补上 .0
			byte->short->int->long---->float->double(虚线的转换有精度损失)
		字符型:
			char->int->long---->float->double
			char->int
			根据码表将字符对应的ASCII值转为int类型.
**2、强制类型转换**
	从大到小:编译会报错
	大的类型转换为小的类型可能会溢出,为了确保程序的安全,编译时就会报错.
	大的数据类型的数据值在小数据类型的范围之内,可以使用强制类型转换.

	格式:
		(type)数据
		将数据的类型强制转换为小括号的数据类型.
	注意:
		1、浮点数强制转换为整数存在精度损失无论小数部分直接舍弃.
		2、类似于Boolean类型无法通过强制类型转换转换为数值型.
		3、当大的数据类型超过小的数据类型范围时,从最低位开始拿对应的位数的二进制.

你可能感兴趣的:(java)