有关Java数据类型转换
程序员文章站
2022-07-15 16:58:23
...
数据类型转换
话不多说,先来图片
-
基本数据类型与引用数据类型
基本:boolean, char,byte,short,int,long,float,double
引用:String,引用类型具体可分为:数组、类和接口 -
隐式转换
隐式转换也叫作自动类型转换, 由系统自动完成.从存储范围小的类型到存储范围大的类型.
byte ->short(char)->int->long->float->double -
显示转换
显示类型转换也叫作强制类型转换, 是从存储范围大的类型到存储范围小的类型.当我们需要将数值范围较大的数值类型赋给数值范围较小的数值类型变量时,由于此时可能会丢失精度(1讲到的从int到k型的隐式转换除外),因此,需要人为进行转换。我们称之为强制类型转换。
double→float→long→int→short(char)→byte
当进行数学运算时,数据类型会自动发生提升到运算符左右之较大者,例如:
int a=233;
byte b=(byte) a;
System.out.println(b);
此时得到的数值是-23,233的二进制表示为:24位0 + 11101001,byte型只有8位,于是从高位开始舍弃,截断后剩下:11101001,由于二进制最高位1表示负数,0表示正数,其相应的负数为-23。