心法领悟:注意加法运算与字符串的连接。
解决办法是把所有数字加法用括号括起来。
public class TypeConversion {
public static void main(String[] args) {
byte b = 127;
char c = 'W';
short s = 23561;
int i = 3333;
long l = 400000L;
float f = 3.14159F;
double d = 54.523;
// 低类型向高类型自动转换
System.out.println("累加bype等于:" + b);
System.out.println("累加char等于:" + (b + c));
System.out.println("累加short等于:" + (b + c + s));
System.out.println("累加int等于:" + (b + c + s + i));
System.out.println("累加long等于:" + (b + c + s + i + l));
System.out.println("累加float等于:" + (b + c + s + i + l + f));
System.out.println("累加double等于:" + (b + c + s + i + l + f + d));
// 高类型到低类型的强制转换
System.out.println("把long强制类型转换为int:" + (int) l);
// 高类型到低类型转换会丢失数据
System.out.println("把long强制类型转换为short:" + (short) l);
// 实数到整数转换将舍弃小数部分
System.out.println("把double强制类型转换为int:" + (int) d);
// 整数到字符类型的转换将获取对应编码的字符
System.out.println("把short强制类型转换为char:" + (char) s);
}
}
累加bype等于:127
累加char等于:214
累加short等于:23775
累加int等于:27108
累加long等于:427108
累加float等于:427111.16
累加double等于:427165.67925
把long强制类型转换为int:400000
把long强制类型转换为short:6784
把double强制类型转换为int:54
把short强制类型转换为char:尉