A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

eg1:
class  ForDemo
{
        public static void main(String[] args)
        {
                int x= 0;
                for (;  x<=10; x++ )
                {
                        if(x%2!= 0);
                               
为什么  System.out.println("x="+x);   在循环体内和循环体外,运行的结果都正确呢?求高手指点迷津!!!

       
                }       
        }
}
---------------------------------------------------------------------------------------
eg2:
class  ForDemo
{
        public static void main(String[] args)
        {
                int x= 0;
                for (;  x<=10; x++ )
                {
                        if(x%2!= 0);                       
                }
                        System.out.println("x="+x);       
        }
}




6 个回复

倒序浏览
if(x%2!= 0); 分号去掉  就正常了
if后面跟分号了。。
因该是你写错了吧。
回复 使用道具 举报
X的值只是在for循环的x++中递增,而且递增的条件都是一样的
回复 使用道具 举报
你这段代码是不是贴错了?
回复 使用道具 举报
本帖最后由 stame01 于 2015-4-23 11:42 编辑

宝贝,if语句后面一定加{},不加的话虽然语法没问题,但是容易看错,写错。加上{}看着舒服。
  1. for (; x <= 10; x++) {
  2.                         if (x % 2 != 0) {
  3.                                 System.out.println("x=" + x);
  4.                         }
  5.                 }
复制代码



回复 使用道具 举报
这应该是考试题吧,;P;P马虎了是吗
回复 使用道具 举报
写在for循环里面会打印10次,写在for循环外面只会打印一次~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马