黑马程序员技术交流社区

标题: 为啥输出结果为空?哪里出问题了。。。 [打印本页]

作者: bianzhiguo6    时间: 2015-3-20 13:46
标题: 为啥输出结果为空?哪里出问题了。。。
public class Test{
    public static void main(String[]args){
    int x = 7;
    while (x>=9){
       System.out.println("输出值:"+x);
       x++;
       }
    }
}
作者: q25225    时间: 2015-3-20 14:22
你初始化x的时候x=7 在做while循环的时候 x< 9 不能执行循环体的内容,
作者: q8893616    时间: 2015-3-20 14:25
你赋给X的值是7 ,已经小于9了 ,但是你的循环体只有在X>=9的时候才有输出。
作者: bianzhiguo6    时间: 2015-3-20 14:33
q8893616 发表于 2015-3-20 14:25
你赋给X的值是7 ,已经小于9了 ,但是你的循环体只有在X>=9的时候才有输出。 ...

好的,我试下,自己在看while和if看的有点混了
作者: bianzhiguo6    时间: 2015-3-20 14:35
q25225 发表于 2015-3-20 14:22
你初始化x的时候x=7 在做while循环的时候 x< 9 不能执行循环体的内容,

现在才反应过来,好吧,谢谢啦,自己看就是容易晕
作者: 胡几手    时间: 2015-3-20 14:36
把大于号改成小于号就行了。
作者: tinyvampire    时间: 2015-3-20 15:14
同意二楼的回复,你的x的初始化值为7,不符合while的条件,所以不会执行循环体里边的输出语句。你把条件改下就行了!不要着急,慢慢来
作者: bianzhiguo6    时间: 2015-3-20 15:17
tinyvampire 发表于 2015-3-20 15:14
同意二楼的回复,你的x的初始化值为7,不符合while的条件,所以不会执行循环体里边的输出语句。你把条件改 ...

好的,谢谢哦,一天看流程控制看多了,脑子就晕了。。。
作者: bianzhiguo6    时间: 2015-3-20 15:51
public class GOOD{
    public static void main(String[]args){
    int x;
    int sum =0;
    for (x=2;x<=100;x+=2){
        
        sum+=x;
       }
    System.out.println(sum);
    }
}
---------------------------------------------------------------
public class GOOD{
    public static void main(String[]args){
    int x;
    int sum =0;
    for (x=2;x<=100;){
        x+=2;
        sum+=x;
       }
    System.out.println(sum);
    }
}
两次结果不一样,for (x=2;x<=100;)有无冒号也有差异
作者: 健健    时间: 2015-3-20 15:59
你x+=2位置不一样,结果肯定不一样啊

作者: 木森森    时间: 2015-3-20 16:32
你的x初始值就小于9,根本不满足循环条件,循环不会执行
作者: 白小马    时间: 2015-3-20 16:42
bianzhiguo6 发表于 2015-3-20 15:51
public class GOOD{
    public static void main(String[]args){
    int x;

第一题中for循环的执行顺序,判断 判断成功就执行{}中的语句。所以第一题是先执行 sum+=x然后再回到for的括号里执行 x+=2 然后再判断 然后。。。。。。。。  直到判断不成功为止
第二题刚好相反   结果当然不一样了
作者: 田晓莉    时间: 2015-3-20 16:45
x=7,不满足循环条件,while{}里面的循环体不被执行。想输出大于9的数的话,把x++拿到循环体外面试试把
作者: bianzhiguo6    时间: 2015-3-21 10:20
田晓莉 发表于 2015-3-20 16:45
x=7,不满足循环条件,while{}里面的循环体不被执行。想输出大于9的数的话,把x++拿到循环体外面试试把 ...

好的,我试下
作者: bianzhiguo6    时间: 2015-3-21 10:21
白小马 发表于 2015-3-20 16:42
第一题中for循环的执行顺序,判断 判断成功就执行{}中的语句。所以第一题是先执行 sum+=x然后再回到for的 ...

这样啊,头晕了,再做一次
作者: xman20    时间: 2015-3-21 10:43
7<9已经不执行循环输出了
作者: 你好我是潘机智    时间: 2015-3-21 10:59
因为你第二个for循环 x+=2没有写到括号里 所以只有在for循环完之后才会执行
作者: lrd7512369    时间: 2015-3-21 12:15
大兄弟要注意劳逸结合,学习时间过长就容易犯这些小错误,甚至是钻牛角尖
作者: tony_ygz    时间: 2015-3-21 18:24
x初始化为7,循环条件是想x>9,亲,循环压根没有开始过




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2