由于Java是强类型语言,所以要进行些运算的实话,要用到类型转换
低到高,低容量到高容量,低精度到高进度 自动转换
高到低,需要强制类型转换可能造成内存溢出或者精度缺失。
运算中,不同类型的数据先转换统一类型,然后进行运算。
* 1.不能对布尔值进行转换 * 2.不能将类型转换为不相干的类型。 * 3.把高容量到低容量要强制转换 * 4.转换时可能内存溢出活进度丢失。
System.out.println("---------------字符转换-------------"); char v='c'; int m=v+1; System.out.println(m);//输出值:100 System.out.println((char)m);//输出值:d
int value=1000000000; int year=20; int sum=value*year; System.out.println(sum);//输出值为:-1474836480内存溢出 long sum2=value*year; System.out.println(sum2);//输出值为:-1474836480内存同样溢出,转换前错误已经发生 long sum3=value*((long)year); System.out.println(sum3);//输出值为:20000000000,错误产生前已处理