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

请问这样为什么不对?

public class HelloWorld{
public static void main(String[]args){
int num;
int count;
for(num=999,count=0;num>=0;count++){
    num=num/10;
}
System.out.println(count);
}
}


正在回答

2 回答

系统运行 num=num/10这部分时,当运行到第3此时为num=9/10,在int类型中,会将小数点后的数字无条件的舍去,所以实际的结果num=0,这时在for循环中num>=0时会进入死循环,无法跳出,所以循环条件改成for(num=999,count=0;num>0;count++)即可

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

慕雪8562476 提问者

非常感谢!
2017-04-02 回复 有任何疑惑可以回复我~

public class HelloWorld{

public static void main(String[]args){

int num=999;

int count=0;

for(;num>0;count++){

    num=num/10;

}

System.out.println(count);

}

}


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

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165153    人
  • 解答问题       17581    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

请问这样为什么不对?

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