强制转换 (类型)变量名 高--低

强制转换 (类型)变量名 高--低,第1张

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);



}

}

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/891272.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-14
下一篇2022-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存