黑马程序员技术交流社区

标题: for循环语句中的问题 [打印本页]

作者: 飞跃离开    时间: 2014-12-18 12:08
标题: for循环语句中的问题
for循环语句中控制条件的位置是i++,能改为++i吗?如果能改,它们有用法的区别吗?
作者: lwj123    时间: 2014-12-18 12:17
可以!加的顺序不同而已,i++是执行完之后加,++i
作者: lwj123    时间: 2014-12-18 12:19
lwj123 发表于 2014-12-18 12:17
可以!加的顺序不同而已,i++是执行完之后加,++i

可以!加的顺序不同而已,i++是执行运算完之后再加,++i加后再执行其它运算
作者: wata    时间: 2014-12-18 13:15
本帖最后由 wata 于 2014-12-18 13:23 编辑

++i  和  i++  都相当于:  i=i+1不同点是:  ++i  是先加法运算,而  i++  是后做加法运算
举例如下:
  1. public class Demo {
  2.         public static void main(String[] args){
  3.                 //输出结果:i = 0        i = 1        i = 2
  4.                 //结论:i++是先执行输出,后进行自加操作。
  5.                 for(int i=0,x=0; x<3; x++){
  6.                         System.out.print("i = "+(i++)+"\t");
  7.                 }
  8.                
  9.                 System.out.println();
  10.                
  11.                 //输出结果:i = 1        i = 2        i = 3
  12.                 //结论:++i是进行自加操作,后先执行输出。
  13.                 for(int i=0,x=0; x<3; x++){
  14.                         System.out.print("i = "+(++i)+"\t");
  15.                 }
  16.         }
  17. }
复制代码






作者: jxlovqqvo    时间: 2014-12-18 13:28
先后运算的问题,i++是当前一次循环完了再+,++i是先加了在执行当前循环

作者: 董晗    时间: 2014-12-18 18:15
可以的         
作者: 郝明明    时间: 2014-12-18 18:37
是否可以更改需要看你的程序代码中对i的使用条件是什么样子的,根据程序的逻辑格式,以及i在程序中的作用是做什么,举例说吧!i用于计数先加和后加是肯定不同的,你可以自己编写一个使用i做计数器的小程序比如计算某个循环进行多少次,然后输出次数,这时候应该是不同的。同样在while循环中先加和后加对于程序的运行是有影响的!
作者: Honelyboy    时间: 2014-12-18 19:25
可以的,只要不做赋值运算。
作者: ben_vs_cong    时间: 2014-12-18 19:47
单从for循环来看,++i和i++是没有区别的。但是有的运算就要有区别的,我是这样记得,++i,就是先自加1在做其他的操作;i++则是先操作,i再自加1
作者: x277402301t    时间: 2014-12-19 00:48
是可以的。具体的要看你打印什么了
作者: 呢?    时间: 2014-12-19 01:00
i++,++i单独用效果是一样的。

做运算++i先自增,++i后自增
作者: 960943877    时间: 2014-12-19 01:05
单独存在的话改了也没关系。不会影响结果。
作者: 青衫禅客    时间: 2014-12-19 01:07
能改啊,这个又不是在运算式子中,此时相当于单独使用。++在前在后都没有关系啊
作者: 找寻小龙猫    时间: 2014-12-19 01:32
没问题,放心改去吧,一个先加。一个后加
作者: 晨若兰曦    时间: 2014-12-19 14:41
这个是单独使用的先加后加都一样,但是赋值时区别就大多了。。
作者: zmhlnrs    时间: 2014-12-19 21:20
在for控制语句中没什么区别
如果单独的话就是一个先加一个后加的区别
作者: 冷风    时间: 2014-12-19 21:26
单独写没什么问题,结合了算法就不同了

作者: 掉了一地..    时间: 2014-12-19 21:28
  ++i  和  i++  都相当于:  i=i+1不同点是:  ++i  是先加法运算,而  i++  是后做加法运算
作者: kenhe    时间: 2014-12-19 21:40
for循环中的自增应该没区别吧
作者: hello_csu    时间: 2014-12-19 21:42
都可以啦,因为for循环只是用到了它的自增功能i++,++i是一样的,但是如果赋值操作可能就有区别了:
i++是先赋值后自增一,而++i是自增后在赋值。




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