问答详情
源自:3-2 Java中的算术运算符

老师为何输出结果不同呢?

http://img.mukewang.com/55f56ecd0001acdc07990408.jpg为何把除数改为double型的,结果就不同了呢?

提问者:Irma_C 2015-09-13 20:42

个回答

  • Technoboy_
    2015-09-14 10:54:51
    已采纳

    4为int型,4.0为float类型。sum除以4的时候,结果为int型,105/4等于26.25,但是强制转换为int型,需要去掉小数点,即为26,但是结果为26.0,是因为int型被强制转换为了double类型。     而105/4.0,结果为float,支持小数类型,所以转换为double也是26.25.

  • leosstudio
    2015-09-13 21:02:18

    因为编译器会根据除数的数据类型来做运算的,你觉得4和4.0一样吗?