执行语句for(int i=1;i++<4;);后变量i的值为()?
运算符的优先级不是先 运算 再比较 最后 赋值 的吗?
i的值最后为什么是5呢,而不是4?
11
收起
正在回答
5回答
同学你好,1. ++是存在优先运算级的,只是i++在下一次调用时进行加一
2. 这次的运行表是正确的。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
Michael_2020
2020-01-19 13:00:55
@好帮手慕小尤 这样是否是对了?
好帮手慕小尤
2020-01-19 10:10:25
同学你好,i++是在一个先使用后加1,即先使用i的值,后让i+1。也就是在下次调用i时,才会进行加1 。如下所示:
int i = 1; System.out.println(i++); // 1 System.out.println(i); // 2
所以循环会执行四次,如下所示:
第一次 i= 1,1<4 true 则进入循环。
第二次 i= 2,2<4 true 则进入循环。
第三次 i= 3,3<4 true 则进入循环。
第四次 i= 4,4<4 false 结束循环,输出i时则i为5。
如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
Michael_2020
2020-01-18 21:06:25
@好帮手慕小尤 老师,如果按优先顺序,下表的问题出在哪里?
1. Java 零基础入门
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星