
public class akk {
public static void main(String[] args) {
int i = 128;
double b = i; //内容溢出
//强制转换 (类型)变量名 高--低
//自动转换 低--高
System.out.println(i);
System.out.println(b);
/*
注意点
1.不能对布尔值进行转换
2.不能把对象类型转化为不相关的类型
3.再把高容量转化到底容量的时候,强制转换
4.转换的时候可能会出现内存溢出,或者精准问题
*/
System.out.println("=============================");
System.out.println((int)23.7); //23
System.out.println((int)-45.89f);//-45
System.out.println("=============================");
char c = 'a';
int d = c+1;
System.out.println(d);
System.out.println((char) d);
System.out.println("=============================");
// *** 作比较大的数的时候,注意溢出问题
//JDK7 新特性 ,数字之间可以下划线分割
int money = 10_0000_0000;
int years = 20;
int total =money*years; //-1474836480 计算的时候已经溢出了
long tota2 = money*years;//默认是 int,转换之前已经溢出问题了?
long tota3 = money*((long)years); //先把一个数转化为long
System.out.println(tota3);
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)