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

这样为啥不可以?

public class HelloWorld{
public static void main(String[] args){
int num = 0;
        int a = 1000;
        if(a<=999999999&&a<=0) {
            for(int i=0;i<=999999999;i++) {
                if(i>10) {
                    a = a/10;
                    num++;
                }
            }
            System.out.println(num);
        }
}
}

正在回答

3 回答

等等!是if(a <= 999999999 && a >=0),看走眼了

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

你是想用if(i > 10)来缩短9999999+的距离吧?,这样子不行的。为何你不用break语句呢

a = a / 10;

num++;

if(a == 0){

    break;

}

还有, if(a<=999999999 && a<=0)没错

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

首先你的if条件写错了,应是:if(a < 0 || a > 9999999999)这里应使用||而不是&&,使用逻辑与需要两边条件都满足才为ture。其次是你的for循环的条件,按照你表达的意思,for循环大概要循环99999999次了。你可以使用while循环来实现这个功能:while(a >= 0){

    a = a / 10;

    num++;

}

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

雀雀you

更正一下:while(a > 0){ a = a / 10; num++; }
2018-11-18 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

这样为啥不可以?

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