目录
在开发中会存在不同类型的变量或数据赋值给其他变量,也有不同类型的变量一同运算,这时就用到了类型转换。
自动类型转换
小范围类型的变量可以直接赋值给大范围类型的变量
例:
byte b1=12;
int a1=b1;
--------------------
char ch='a';
int a2=ch;
表达式的自动类型转换
表达式最终结果的数据类型是由表达式中最高数据类型决定。也就是说,如果表达式中有个double类型的数据那结果的数据类型也是double。
而byte short char在表达式中是直接提升为int类型计算。
例:
byte b2=12;
byte b3=11;
int i1=b2+b3;//正确案例
byte b4=b2+b3;//错误案例
强制类型转换
大范围类型的变量不能直接转换为小范围的变量,否则报错。必须强制类型转换。
强制类型转换的格式
数据类型 变量=(数据类型)其他类型的变量/数据。
需要注意的是强制类型转换可能导致数据丢失。
例:int ro=1500;
byte cr=(byte)ro;
需要注意double类型的数据转换为int类型的数据,是直接保留整数部分返回,小数部分直接舍弃。
double do=9.3;
int ao=(int)do;