课程
/后端开发
/Java
/Java入门第一季(IDEA工具)升级版
m=5,n7
int x = ( m * 8 / ( n + 2 ) ) % m ;
结合运行结果: x=4,表示不理解
2014-11-10
源自:Java入门第一季(IDEA工具)升级版 3-8
正在回答
woqu ,有点逆天
4%5为什么余4呢
徐离酱
这些运算符默认都是取整操作
只是最后的结果要求是int类型赋值给x,怎么理解计算过程中40/9的结果也取int类型呢?
悟道参禅
重返艾泽拉斯 回复 悟道参禅
40/9 得4 余4,因为是int类型,所以取4就行,然后4%5 得0余4,所以取余为4.
致远163
慕粉32
qq_行在天涯_04096833 回复 慕粉32
总感觉40/9之后还没有完成赋值运算,实际上赋值应当是40/9%5才对啊,为什么在40/9的时候就要取整了?
MZS1994
取整,取整,取整,重要的事情说三篇。仅仅是取整,千万不要四舍五入
运算符优先级问题,()是最优先,所以先算最内层()中的内容(n+2),然后就变成了(5*8/9)%5,依然先算()内的内容,从左到右依次计算,结果取int型,变成了4%5,商为0,余4。取余为4。
首先先写成容易看的:int x = (5 * 8 / (7 + 2)) % 5;
运算过程:
int x = (5 * 8 / 9) % 5;
int x = (40 / 9) % 5;// 40 / 9 = 4
int x = 4 % 5;// 4 除以 5取余
int x = 4;
gxttxing
HappyHacking 回复 gxttxing
慕粉1474379935
举报
0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始
1 回答运行结果显示
1 回答显示运行结果
3 回答点击运行结果看不到结果
2 回答java中 int x =40/9结果为4,而int x 44/9 结果也为4. 为什么?
1 回答运行结果?
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号