java吧 关注:1,250,068贴子:12,734,343

新人求解输出顺序

只看楼主收藏回复

如图:为什么打印第二个b的值,
为什么不是第一个的值?


来自Android客户端1楼2015-09-29 12:56回复


    来自Android客户端2楼2015-09-29 12:57
    回复
      真心不明白!


      来自Android客户端3楼2015-09-29 12:58
      回复


        来自Android客户端4楼2015-09-29 13:00
        回复
          你是说第7行的b?


          IP属地:北京来自Android客户端5楼2015-09-29 13:01
          收起回复
            覆盖


            来自Android客户端6楼2015-09-29 13:01
            收起回复
              你的问题本身就有问题
              结果应该是6和5吧
              你在第6行下边打印b应该也是5


              IP属地:北京7楼2015-09-29 13:04
              回复
                b=a++;x先赋值后计算


                IP属地:浙江来自iPhone客户端8楼2015-09-29 13:08
                回复
                  你想的是sysout(a++);吧= =


                  IP属地:福建9楼2015-09-29 13:11
                  回复
                    请问这样理解对吗?
                    1:a++运行后得到结果5,a=5 然后赋值给b.b=5
                    2:然后执行b=a++, a先赋值b,覆盖了之前b=5,所以b=5,然后执行a++,a=6
                    3:输出打印a=6 b=5


                    来自Android客户端10楼2015-09-29 13:23
                    收起回复


                      来自Android客户端11楼2015-09-29 13:29
                      回复


                        来自Android客户端12楼2015-09-29 13:29
                        回复


                          IP属地:安徽来自Android客户端13楼2015-09-29 13:44
                          回复


                            14楼2015-09-29 18:03
                            回复
                              执行顺序由上到下,b=++a,相当于b=a+1=5.a=a+1=5///接着b=a++,相当于b=a=5,a=a+1=6...然后输出结果就是a=6.b=5


                              来自Android客户端17楼2015-09-29 18:29
                              收起回复