黑马程序员技术交流社区

标题: 请问这两种写法哪个更规范?为什么编译运行都对?求解! [打印本页]

作者: adminlxb    时间: 2015-4-23 01:12
标题: 请问这两种写法哪个更规范?为什么编译运行都对?求解!
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);       
        }
}





作者: q8387811    时间: 2015-4-23 02:02
if(x%2!= 0); 分号去掉  就正常了
if后面跟分号了。。
因该是你写错了吧。
作者: 横看成岭侧成锋    时间: 2015-4-23 09:24
X的值只是在for循环的x++中递增,而且递增的条件都是一样的
作者: 谷歌    时间: 2015-4-23 11:22
你这段代码是不是贴错了?
作者: stame01    时间: 2015-4-23 11:41
本帖最后由 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.                 }
复制代码




作者: 纳海百川    时间: 2015-4-23 22:30
这应该是考试题吧,;P;P马虎了是吗
作者: 大西洋    时间: 2015-4-23 23:00
写在for循环里面会打印10次,写在for循环外面只会打印一次~




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