int i = 128; byte b = (byte) i; int q = 128; double w = q; //因为是低→高 不需要强制转换,因为会自动转换4.转换的时候可能存在内存溢出,或者精度问题
//数据过大导致的内存溢出问题 int money = 1_000_000_000; int years = 20; long total = money*years; long real_total=years*((long)money); //↑所以需要在两者相乘前将其数据的类型转换为long类型 System.out.println(total); //输出为错误的-1474836480 System.out.println(real_total); //输出为20000000000
//精度问题 System.out.println((int)23.5); //输出是23 System.out.println((int)-45.89f); //输出是-45



