类型转换
-
由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换
低------------------------------------------------------------------->高
byte,short,char->int->long->float->double
public class Demo2 { public static void main(String[] args) { int i=128; byte o=(byte)i;//内存溢出 System.out.println(i); System.out.println(0); //强制转换 (类型)变量名 //高---低 //自动转换 double b=i //低---高 /* 注意点: 1.不能对布尔值进行转换 2.不能把对象类型转换为不相干的类型 3.在吧高容量转换到低容量的时候,强制转换 4.转换的时候可能出现溢出,或者精度问题 */ System.out.println("======================="); System.out.println((int)29.9); System.out.println((int)-21.3f);//丢精度 System.out.println("======================="); //操作数较大的时候,注意溢出问题 int money=10_0000_0000; int year=20; int total=money*year; long total1=money*year;//默认是int,转换之前就出现了问题 long total2=money*((long)year);//正确 System.out.println(total);//输出-1474836480,溢出 } }