类型转换

注意点:
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换到低容量的时候,需要强制转换
4.转换的时候可能存在内存溢出,或者精度问题
============================================
JDK7新特性,数字之间可以用下划线分割
例如:int money = 10_0000_0000
结果输出还是一样的
=============================================
内存溢出举例:

int total = money * years;
int total2 = money * years;
这两行代码输出的结果都是负数,其实就是内存溢出的问题,int内存大概是21亿左右

int total3 = money * ((long)years);
这一行代码输出的结果是正确的,
我是这样理解的:
long比int优先级要高,内存也大,在内存快要溢出时,率先将years强制转换为long类型

浙公网安备 33010602011771号