LZ 我之前也为这个问题困扰过!我给你的解答你看下,
- class Test
- {
- public static void main(String[] args)
- {
- int a=0,b,c;
- b=(a++);
- c=a;
-
- System.out.println("a="+a+"..b="+b+"..c="+c);
- }
- }
复制代码
你运行下这个代码结果是 1 0 1;
说明在执行b=(a++)的过程中a 的值变化了,但是b还是指向a原来的值
在JAVA中()的优先级是最高的,++的运算优先级也比 =高,所以你在这加()的意义不大
但是问题b为啥不等于1,原因是b=a++的过程中,是先把a赋值给b,然后a再自增,但是作为返回值出现,并没有再赋值给b。
|
|