public class demo2 { public static void main(String[] args) { int i 128; byte b (byte) i;//内存溢出 //强制转换 (类型)变量名 高到低 //自动转换 低到高 System.out.println(i); System.out.println(b); /* 注意点 1.不能对布尔值进行转换 2.不能对不相干的类型进行转换 3.在把高容量转换为低容量的时候需要进行强制转换反正不需要强制转换正常操作即可 4.转换的时候可能会出现内存溢出或精度出问题(精度丢失) */ System.out.println(); System.out.println((int)23.7);//运行结果为23(精度丢失) System.out.println((int)-45.89);//运行结果为-45(精度丢失) } }public class demo3 { public static void main(String[] args) { //操作较大的数的时候注意溢出问题 //JDK7新特性数字之间可以用下划线分割 int money 10_0000_0000; int years 20; int total money*years;//结果为-1474836480,计算溢出了 long total2 money*years;//默认是int转换之前已经存在问题 long total3 money*(long)years;//先把一个数转换成为long System.out.println(total3); } }
自学IT第七天(2026年6月8号)
发布时间:2026/6/9 1:43:26
public class demo2 { public static void main(String[] args) { int i 128; byte b (byte) i;//内存溢出 //强制转换 (类型)变量名 高到低 //自动转换 低到高 System.out.println(i); System.out.println(b); /* 注意点 1.不能对布尔值进行转换 2.不能对不相干的类型进行转换 3.在把高容量转换为低容量的时候需要进行强制转换反正不需要强制转换正常操作即可 4.转换的时候可能会出现内存溢出或精度出问题(精度丢失) */ System.out.println(); System.out.println((int)23.7);//运行结果为23(精度丢失) System.out.println((int)-45.89);//运行结果为-45(精度丢失) } }public class demo3 { public static void main(String[] args) { //操作较大的数的时候注意溢出问题 //JDK7新特性数字之间可以用下划线分割 int money 10_0000_0000; int years 20; int total money*years;//结果为-1474836480,计算溢出了 long total2 money*years;//默认是int转换之前已经存在问题 long total3 money*(long)years;//先把一个数转换成为long System.out.println(total3); } }