黑马程序员技术交流社区

标题: for语句这么写为什么错误啊 [打印本页]

作者: 王帅---    时间: 2015-12-5 16:57
标题: for语句这么写为什么错误啊
int x = 1;
                for(x;x<100;x++)
                        System.out.println(x);
作者: 281884702    时间: 2015-12-5 17:31
for(初始化表达式;循环条件表达式;循环后的操作表达式)
作者: xiaoaonuanhu    时间: 2015-12-5 18:01
int x =1;应该定义在for里面吧
作者: 虔诚精    时间: 2015-12-5 20:20
受教了……{:2_30:}
作者: hyl    时间: 2015-12-5 21:40
是,for循环有固定的格式。
作者: zmttt    时间: 2015-12-5 21:50
初始化表达式定义在for外面时,for里面的初始化表达式要省略掉,x不是语句
作者: Little_jie    时间: 2015-12-5 21:55
里面必须是表达式
作者: LSD-ZWH    时间: 2015-12-5 21:59
长知识了
作者: 横溢天使    时间: 2015-12-5 21:59
for语句格式是这样的for(初始化表达式;条件表达式;程序执行后操作)。既然你一开始就定义了int x=1;了,那么后边for语句中就可以不用写初始化语句,那样就可以了。
作者: 舞动炫龙    时间: 2015-12-5 22:01
路过。。
作者: Yuto吕    时间: 2015-12-5 22:09
如果用for,x是局部变量,如果想把x定义在外面,应该用while或do while
作者: zhuwenjia    时间: 2015-12-5 23:11
初始化放在里边就好了
作者: Myth、骞    时间: 2015-12-5 23:23
我的天,人家定的规则,就必须准从。 没有为什么。
作者: ninety_奶挺    时间: 2015-12-5 23:26
x不是语句,改为如下所示就可以了。
int x = 1;
for(;x<100;x++)
     System.out.println(x);
  }
作者: liuzhipeng    时间: 2015-12-5 23:49
涨知识量了
作者: wyasln    时间: 2015-12-6 10:43
第一个分好前面空着,放个x做什么编译器不知道
作者: 大爱卓生    时间: 2015-12-6 11:58
这样做的目的只是为了for循环结束后x变量还能够进行引用。
作者: jiuyeban    时间: 2015-12-6 12:09
涨姿势类  
作者: Endless_paradox    时间: 2015-12-6 12:23
涨姿势了
作者: 耿帅东    时间: 2015-12-6 13:08
for语句有固定格式的,别随便乱整
作者: 回归原点521    时间: 2015-12-6 13:20
for循环中的x,你写的不是表达式,而是一个值
作者: 786314376    时间: 2015-12-6 13:54
For里边错了
作者: 786314376    时间: 2015-12-6 13:55
For里边错了   
作者: 马赛    时间: 2015-12-7 00:27
for循环的初始化语句,如果在外边定义了,那么在for后边的括号里就不要写了,要不就直接在括号里定义
作者: 石三伢子1    时间: 2015-12-7 12:42
x不是表达式,而是一个值或者引用,不能作为for循环的初始判断条件;
作者: 我住隔壁我姓王    时间: 2015-12-7 14:44
同涨知识
作者: 林大神    时间: 2015-12-7 15:50
大家没发现他的for循环没写{ }套住循环体后面的语句吗?
作者: ゞ神说    时间: 2015-12-7 15:55
可以在外边定义,但是得在里边赋值
作者: 啦啦啦啦啦啦啦    时间: 2015-12-7 16:27
虽然都是同一个x,但是x是个变量,for里面写个变量,变量是初始化吗?!注意for循环的第一个条件是初始化条件,而变量是变化的
作者: 刀郎去西藏    时间: 2015-12-7 16:31
       for(语句1;语句2;语句3)这是java中对于for循环的要求。而我们知道x只是一个变量,不能算作一个语句(java中一般用逗号将其隔开,判定一个语句就是去找分号)。
       你如果非要使用上面定义的那个变量x,你可以给其随便赋一个值,编译器肯定就不会保错;
       如果你想要完全使用上面的定义int x = 1,那就可以在for循环中完全什么不写像这样for(;x<100;x++)
作者: 刀郎去西藏    时间: 2015-12-7 16:33
耿帅东 发表于 2015-12-6 13:08
for语句有固定格式的,别随便乱整

其实我感觉这个问题不能算作乱整,只有多去实验,多去问为什么,java才能学的扎实。一定要知其然还要知其所以然。
作者: yubail    时间: 2015-12-7 19:30
路过顶一下
作者: a54267490    时间: 2015-12-21 17:06
for里面的不是表达式
作者: Jerson_ZF    时间: 2015-12-21 17:24
必须是一条语句
作者: 爱水的云    时间: 2015-12-21 17:48
长知识了
作者: 744919632    时间: 2015-12-21 20:28
外面的X和里面的不是一个。
作者: 1050498188    时间: 2015-12-21 20:54
支持支持支持支持支持支持支持
作者: 隔壁老猫    时间: 2015-12-21 21:20
耿帅东 发表于 2015-12-6 13:08
for语句有固定格式的,别随便乱整

欧呦, 我又看见你乱整了
作者: 唐洪超    时间: 2015-12-21 21:26
int x=1把他定义在for循环里
作者: dg216888    时间: 2015-12-21 22:48
ninety_奶挺 发表于 2015-12-5 23:26
x不是语句,改为如下所示就可以了。
int x = 1;
for(;x

那么多楼就一个人回答正确了。。。不容易
作者: 南无ice    时间: 2015-12-21 23:11
还是规规矩矩按着格式来稳一点。
作者: 迷茫不堪的年纪    时间: 2015-12-21 23:45
变量 和  for 的作用域 想明白在发哈
作者: 意念痴心灬戒贪    时间: 2015-12-22 00:12
for循环的里的应该是表达式,而不是变量吧
作者: 小新没蜡笔    时间: 2015-12-22 10:53
for里面需要表达式啊。
作者: zhauibuzhai    时间: 2015-12-22 12:00
固定格式  你没法改
作者: luyang18    时间: 2015-12-22 23:07
涨知识了,验证过初始化定义值不在for里面,for循环里面不写初始化条件不会报错
作者: 爱hao者    时间: 2015-12-22 23:10
原来是这酱紫
作者: 汐枫wait    时间: 2015-12-23 22:17
这个你要不就空起,要不就把int x =1 写在初始化表达式的位置才行
作者: 鳌少宝    时间: 2015-12-26 22:47
初始化表达式哦亲
作者: qinrongchang    时间: 2015-12-27 09:51
x可以不写的




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