//低 - - >高 //byte, short,char.int. long.float.double //强制转换 (类型)变量名 高-->低 //自动转换 低-->高 /* * 注意 * 不能对布尔值进行转换 * 不要把对象类型转换成不相干的类型 * 把高容量转换成低容量是强制转换 * 转换时可能存在内存溢出或精度问题 * * */ byte b1 = 1; int i1 = b1;//自动转换 System.out.println((int)3.1445);//精度问题 3 System.out.println((int)'a');//强制转换 97 System.out.println("==============================="); int money = 10_0000_0000;//数字之间用下划线分割可不显示下划线 int year = 20; int total = money * year;//-1474836480内存溢出出错 long total2 = money * year;//转换前已经出现错误 long total3 = money * (long)year;//先把一个转换成long System.out.println(total3);