请问 int count = 0;if((count++) == 0) 是真是假?

解决方案 »

  1.   

    应该是真.count=0
    count++之后,count的值为1,但结果为0.
      

  2.   

    if((count++) == 0) 不是应该先算括号(count++)的里的吗
      

  3.   

    跟for(i=0;i>j;i++)一样,先判断执行语句后再++的吧。
      

  4.   


    哎 又回来看到这帖,那么多人都说真,看到 " For_suzhen(不懂装懂) ( ) " 的答复.
    运行了一下程序,郁闷,不够心细,没有注意括号的作用.我也错了看来我说错楼主了,应该看运算浮的优先级的是我.呵呵win2000+jdk1.4+eclipse3.1的环境下运行:结果是if的条件为false
      

  5.   

    to yanhuaxie(IT Farmer) :想其了一句台词:“你的错误就在于,你以为自己错了”   ^_^括号是没有作用的,你原来对优先级的理解是没有错的,程序运行的结果应该是 true。
      

  6.   

    to : maquan('ma:kju)可是事实是运行的结果确实是true啊,运行的结果表明括号的作用其实发生了.难道我的开发环境也欺骗了我!!呵呵 所以我也很郁闷,哪位高人给解释解释.晚上回去在好好看看基础.呵呵
      

  7.   

    > 可是事实是运行的结果确实是true啊,运行的结果表明括号的作用其实发生了.
    > 难道我的开发环境也欺骗了我!!呵呵看来是“我以为你错了”,hehe看你前面帖子的意思,我以为你程序运行的结果是 false。正确的运行结果是 true。因为“后自增(++)运算符”的“结合”优先级是最高的,但它的“计算”却发生在最后,在整个表达式的值计算完成之后。所以,在表达式的计算过程中,count 的值是 0,所以结果是 true。括号其实并没有用。你把括号去掉,结果依然是 true。原因就在于,“自增运算符”的结合优先级已经是最高的了,括号也不会再起什么作用了。
      

  8.   

    运行过了 是 T      我们都应该回去看看J2SE   基础了  heh~
      

  9.   

    真----------------------
    Java游戏开发交流平台:http://javagame.org.cn