public class Demo05 {
public static void main(String[] args) {
//byte,short,char--->int--->long--->float--->double
int i =128;
//强制转换 (类型)变量名 高--->低
byte b=(byte)i;//byte最大值127 内存溢出
System.out.println(i);//128
System.out.println(b);//-128
//自动转换 低--->高
int i2 =128;
double b2=i;
System.out.println(i2);//128
System.out.println(b2);//128
System.out.println((int)33.5);
System.out.println((int)-22.8);
//操作比较大的数的时候,注意溢出问题
//JDK7新特性,数字之间可以用下划线分割
int money =10_0000_0000;
System.out.println(money);//1000000000
int years=20;
int total=money*years;
System.out.println(total);//-1474836480 计算的时候溢出
long total2=money*years;
System.out.println(total2);//-1474836480 默认是int,转换之前存在问题
long total3=money*((long)years);
System.out.println(total3);//20000000000
}
}