类型转换
数据类型由低到高:
byte,short,char,int,long,float,double
int i = 128;
byte b = (byte)i; //内存溢出(byte:0-127)
System.out.println(i);
System.out.println(b);
System.out.println("================================");
// 由高到低,强制转换 (类型)变量名
// 由低到高,自动转换
int a = 128;
double c = i;
System.out.println(a);
System.out.println(c);
输出:
128
-128
================================
128
128.0
Process finished with exit code 0
精度问题:
/*
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换为低容量的时候,强制转换
4.转换的时候可能存在内存溢出,或者精度问题
*/
System.out.println("=========================");
System.out.println((int)23.7);//精度问题
System.out.println((int)188.5226f);
输出:
=========================
23
188
Process finished with exit code 0
字符串
System.out.println("=========================");
char e = 'a';
int d = e+1;//自动转换
System.out.println(d);
System.out.println((char)d);//自动转换
输出:
=========================
98
b
Process finished with exit code 0