Day06

deme 05

public class Demo04 {
    public static void main(String[] args) {
        /*int i=128;        这里会内存溢出,原因是超出了数据类型的范围int的范围是-128-127;
        byte b =(byte) i;   强制转换  格式:(类型)变量名
            强制转换====高到低
            自动转换====低到高
      Java中的基本数据类型由低到高排序:byte,short,char int long float double*(小数优先级高于整数
        */
        int i=128;
        double b = i;
        System.out.println(i);
        System.out.println(b);
        /*
        注意点:
        1.不能对布尔值进行数据类型转换(Boolean);
        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);

    }








}

demo6

public class Demo05 {
    public static void main(String[] args) {
        //操作比较大的数时,注意内存溢出问题
        //JDK7新特性 数字之间可以用下划线分割
        long money = 10_0000_0000 ;
        int years = 20;
        long total = money*years;//计算的时候溢出了
        long total2 = money*years;//默认的是int,已经出现了问题
        long total3 = money*((long)years);
        long total4 = ((long) money)*years;
        System.out.println(total2);
        System.out.println(total3);
        System.out.println(total4);

    }
}

posted @ 2021-01-29 01:50  CalculusAkuma  阅读(73)  评论(0)    收藏  举报