首页 > 代码库 > java的数据类型的转换

java的数据类型的转换

一:java的数据类型转换除布尔类型boolean(不能转换)有两种:<一> 自动转换; <二> 强制转换

<一>、自动转换:就是将小的数据类型自动转换成大的数据类型。如:int与byte计算时,byte(-128~127)自动的转换成int(-2147483648~2147483647)的类型。

  0.1、基本数据类型自动转换:
              byte->short,char -> int -> long      
              float -> double
              int -> float
            long -> double
 
             记住小可转大,大转小会失去精度!!!
 
   <1> byte的转换:
       
        byte   a=120;
        byte   b=a+80;  //提示:从int类型(指:80)转换成byte的类型可能会损失精度
        System.out.println(b);
 
  <2> char 字符转换
       char id=‘a‘;  a=97
       int i=id+3;  
      System.out.println(i);  //100
  
   <3>记住int:  int 一旦达到最大值,它不会提升其类型,而是直接损失精度。
      int  id=2147483647;
      int g=id+1;
       System.out.println(g);  //-2147483648
 
     为什么会是负的-2147483648的呢?
       原因是:2147483647的二进制是:0111  1111     1111  1111     1111  1111     1111  1111
                    如果+1之后它的二进制是:1000  0000     0000  0000     0000  0000     0000  0000  转换成十进制之后:-2147483648

java的数据类型的转换