#Java Day04 类型转换

类型转换

 

 

-------------------------------------------------------------------------------------------------------------------------------------------> 高

 

byte,           short,        char             ->            int           ->             long             ->             float           ->         double

 

 public class Demo05 {
     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);
 
    }
 }
 

 

 

 public class Demo06 {
     public static void main(String[] args) {
         //操作比较大的数的时候,注意溢出问题
         //JDK7 新特性 , 数字之间可以用下划线分割
         int money = 10_0000_0000;
         System.out.println(money);
 
         int years = 20;
         int total = money * years; //-1474836480 ,计算的时候溢出了
         long total2 = money * years;//默认是int,转换之前已经存在问题了?
 
         long total3 = money*((long)years);//先把一个数转换为long
         System.out.println(total3);
         
         // L l
 
    }
 }
 

 

posted @ 2020-12-27 11:17  夏天的素颜  阅读(35)  评论(0编辑  收藏  举报