为了账号安全,请及时绑定邮箱和手机立即绑定

为什么for语句后面可以添加分号

int num = 999;
        int count =0;
        for(count=1;(num/=10)>0;count++);
        System.out.println("它是个"+count+"位的数!");

这样也能正确输出,但是谁能讲解下这段代码的意思

正在回答

2 回答

for语句后面直接加分号,说明循环中没有可执行的循环操作,自动进入下一次循环,唯一变化的只是count的值自加一次,直到不满足循环条件,跳出循环,循环结束。

count=1,  999/10=99>0,  count=2,  99/10=9>0,  count=3,  9/10<0,  跳出循环,  输出“它是个3位的数”

0 回复 有任何疑惑可以回复我~
#1

qq_新城旧梦_03226011 提问者

谢啦,
2016-07-06 回复 有任何疑惑可以回复我~

 for(count=1;(num/=10)>0;count++);

count=1,再判断(num/=10)>0,显然成立,然后count+1=2;执行下面的语句,但分号前为空,即没有要执行的。所以再回到判断(num/=10)>0,成立,然后count+1=3;最后判断(num/=10)>0不成立,所以输出count为3.如果不加分号,for循环就包括了 System.out.println("它是个"+count+"位的数!");

0 回复 有任何疑惑可以回复我~
#1

qq_新城旧梦_03226011 提问者

也就是说分号的作用是让前两次不被输出,只有当for循环不成立才会输出下一句是么?
2016-07-03 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么for语句后面可以添加分号

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信