问答详情
源自:2-10 Java中的强制类型转换

强制类型转化不会改变其值吗

double a=10.5;
int b=(int)a;
Syetem.out.println(a);
Syetem.out.print(b);

按照本节教程结果应该是:

10.5

10

程序里(int)a不会改变原本a的值,为什么?



提问者:孤僻成瘾 2018-06-29 09:36

个回答

  • 憨憨Paul
    2018-07-14 21:02:38
    已采纳

    只是暂时改变这个值,仅在当下输出时才改变的

  • 自渡2
    2018-06-29 11:03:44

    这个是因为double是有包含xx.xx的小数点的   int是一个整数型 说明会直接舍弃掉后面的小数点的、按照代码运行的一个过程  (int)a这里是强转换会改变原来的一个值  变为10  所以int b=10