类型范围小的,可以直接转换为类型范围大的变量,byte a = 20 可以直接 int b = a;
    类型范围大的,不能直接赋值给范围小的变量,会报错
    image.png

    1. public class TypeDemo3 {
    2. public static void main(String[] args) {
    3. // 理解强制类型转换
    4. int a = 20;
    5. byte b = (byte) a;
    6. System.out.println(a);
    7. System.out.println(b); // b被强制转换的结果是20,因为在byte范围内最大范围127
    8. int i = 1500;
    9. byte j = (byte) i;// 1500>127 byte数据类型的最大范围,输出结果会报错
    10. System.out.println(j); // -36
    11. // 强制类型转换注意事项:1. 强制转换可能造成数据(丢失)溢出
    12. // 2. 浮点型强行转成整型,直接丢掉小数部分,保留证书部分返回
    13. double score = 99.5;
    14. int it = (int) score; // 可以使用alt+enter万能键然后回车,自动补齐转换的(int)
    15. System.out.println(it); // 99,直接舍弃小数部分
    16. }
    17. }