心法领悟:注意加法运算与字符串的连接。

解决办法是把所有数字加法用括号括起来。

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:尉