类型转换
//类型转换:不同类型的数据先转换为同一类型,然后进行运算;
int i = 128;
byte b = (byte)i;//要想让i=b,两者必须属于同一类型,需要在i前加上(byte)进行转化
System.out.println(i);//输出i=128
System.out.println(b);//输出b=-128,由于内存溢出了,byte范围是-128-127
//强制转换类型:由高到低,不需要进行操作,直接写等号即可;
//自动转换类型:由低到高,需要进行操作;
//高低顺序:byte,short,char<int<long<float<double,小数有优先权;
double c = i;
System.out.println(i);
System.out.println(b);
/*注意:
1、不能对布尔进行转换;
2、不能把对象类型转换为不相干的类型;
3、在把高容量转换到低容量时候,强制转换;
4、转换的时候,可能存在内存溢出或者精度问题
/
System.out.println((int)23.7);//输出23,精度降低;
char d = 'a';
int e = d +1;
System.out.println(e);//由int转变到char不需要转换操作;
System.out*.println((char)e);
//操作比较大的数字的时候,注意内存溢出问题;
//如果要写比较大的数字,不方便,可以中间用下划线分割,而且下划线不会被输出;
int money = 10_0000_0000;
System.out.println(money);
int year = 20;
int total = moneyyear;
System.out.println(total);//此时输出为负数,因为内存溢出了,需要用long
long total2 = moneyyear;
System.out.println(total2);//输出依旧是负数,因为已经默认是整数了
long total3 = money((long)year);
System.out*.println(total3);//输出正确

浙公网安备 33010602011771号