美文网首页
Java变量 数据类型转换

Java变量 数据类型转换

作者: 天天向好 | 来源:发表于2018-03-01 15:17 被阅读15次

    实例:

    class Demo3{

    public static void main(String[] args){

    /*定义四种整数的数据类型*/

    byte b = 127;

    short s = 50;

    int i = 100;

    long l = 10000l;

    //常量5默认是int类型,b+5可能超出byte的最大值,所以jvm定义byte和short和char

    //变量参与运算的时候数据类型会提升到int

      int bresult  = b + 5;

      //short sresult = s + 1;错误

      int sresult = s + 1;

      System.out.println(bresult); //132

      System.out.println(sresult); //51

    //定义一个a字符,每一个字符都对应一个ascii码,在字符参与运算时是用ascii吗参与运算

    char c = 'a';

    //char变量参与运算的时候数据类型会提升到int

    int cresult = c + 3;

    System.out.println(cresult); //100

    //byte和short和char直接运算也会转换成int

    int sresult1 = b + s;

    System.out.println(sresult1); //177

    //常量的计算可以使用byte,short,char接收(常量的计算结果不能溢出)

    byte iresult1 = 4+3;

    System.out.println(iresult1); // 7

    int i1 = 2147483647;

    //如果int计算时发生溢出就会变为负值,不会自动转换成long

    int i2 = i1 + 100;

    System.out.println(i2); // -2147483549

    long lresult1 = i1 + l;

    System.out.println(lresult1); // 2147493647

    float f = 1.5f;

    //float类型和long类型计算,会转换成float,

    float fresult = f + l;

    System.out.println(fresult); // 10001.5

    double d = 10.5d;

    //float类型和double数据类型计算时,会转换成double

    double dresult = d + f;

    System.out.println(dresult); // 12.0

    /////////////////////////////////////////////////////////////强制转换

    //在java程序中同一个范围内变量名字不能重复

    int i3 = 97;

    //把int类型的数据强制转换成byte

    byte b3 = (byte)i3;

    //把int类型的数据强制转换成short

    short s3 = (short)i3;

    //把int类型的数据强制转换成char

    char c3 = (char)i3;

    System.out.println(b3);  // 97

    System.out.println(s3); // 97

    System.out.println(c3); // a

      int i4 = 202;

      //注意如果被转换的值超过了要转换的值的最大值,转换时精度就损失了,不准确。

      byte b4 = (byte)i4;

      System.out.println(b4); // -56

      //把long类型的数据转换成int

      long l4 = 10000l;

      int i5 = (int)l4;

      System.out.println(i5); //10000

      //把小数float转换成整型,直接把小数舍弃(非四舍五入)

      float f1 = 12.5f;

      int i6 = (int)f1;

      System.out.println(i6); //12

      //把小数double转换成整型,直接把小数舍弃(非四舍五入)

      double d1 = 15.5f;

      int i7 = (int)d1;

      System.out.println(i7); // 15

    }

    }

    相关文章

      网友评论

          本文标题:Java变量 数据类型转换

          本文链接:https://www.haomeiwen.com/subject/qwggxftx.html