黑马程序员技术交流社区

标题: 这个问题怎么理解???? [打印本页]

作者: Q932036165    时间: 2015-12-23 22:21
标题: 这个问题怎么理解????
public static void main(String[] args) {
  int a = 1;
  for (int i = 0; i < 3; i++) {
   a = a++;  
     int b = a++;
   System.out.println(a);
   System.out.println(b);
  }
}


作者: 胖小子    时间: 2015-12-23 22:29
一: a = 1 b=1
作者: 胖小子    时间: 2015-12-23 22:30
一: a = 1 b=2   二: a = 2 b =3  三:a=3 b =4   就是++i 和i++的区别吧
作者: Q932036165    时间: 2015-12-23 22:46
胖小子 发表于 2015-12-23 22:30
一: a = 1 b=2   二: a = 2 b =3  三:a=3 b =4   就是++i 和i++的区别吧

你编译过么?不是这个结果...
作者: dg216888    时间: 2015-12-23 23:05
a =2 ,3 ,4
b =1,2,3
作者: dg216888    时间: 2015-12-23 23:10
首先循环3次
a =1
第一次循环:a= a++ ; b= a++ ——>a++ 先赋值,再自加 a= 1 ,然后b = a++;  同样先赋值 b = 1 ,然后a 自加 a = 2 ;同理进行第二次和第三次循环。
作者: 胖小子    时间: 2015-12-24 10:33
Q932036165 发表于 2015-12-23 22:46
你编译过么?不是这个结果...

我错了!  第一次 先a =a先赋给a 然后进行++   b=a++  b=1 a=2
作者: foolishlovepig    时间: 2015-12-24 12:55
这个就是考察对a++的理解。就是加入了循环之后显得有点乱,不过实际编程的时候用不到这样吧。。。
作者: Q932036165    时间: 2015-12-24 19:05
foolishlovepig 发表于 2015-12-24 12:55
这个就是考察对a++的理解。就是加入了循环之后显得有点乱,不过实际编程的时候用不到这样吧。。。 ...

恩,主要出现在题目中...
作者: 米阳SOHO    时间: 2015-12-24 20:18
额?这个真有点绕,不过还能理解吧
作者: Q932036165    时间: 2015-12-26 22:23
米阳SOHO 发表于 2015-12-24 20:18
额?这个真有点绕,不过还能理解吧

大神请讲!!!!




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