律生息
2017-01-09 02:22
源代码是int X=(40/9)%5;输出X=4
第一点,=优先级低于%所以先有4.4%5=4.4才对,为什么使4.4取整了为4,取整应该是取模计算完成后的操作。
第二点,如果第一点成立,则答案应该是4.4,将双精度浮点赋值给int,在没有进行强制转换X=(int)4,4时应该会显示error,为什么没有显示,而是正常输出,那么说明赋给int的值为4而不是4.4,我觉得按照我的思维应该是显示error,,,而不是4,,,
源代码是int X=(40/9)%5;输出X=4
第一点,=优先级低于%所以先有4.4%5=4.4,但是因为都是int型的,所以自动转换了,直接省略掉了小数,所以4.4取整了为4。
第二点,你第一点不成立
第一点:定义的m和n都是int,所以两数相除默认为int类型。
取模(%),你可以理解为小学时候学过的除法运算,取模就是取的余数,只有整数,不会有小数的;4除以5,除不开,于4;
Java入门第一季(IDEA工具)升级版
1167355 学习 · 18677 问题
相似问题