- class Test {
- public static void main(String[] args) {
- int x = 2, y = 2 ;
- System.out.println("x++ = "+(x++));
- // 当程序运行到这里的时候,x仍然等于2,当程序把x输出之后,对x进行了自增的动作。如果你在这里的后面再次输出x,就会变成3
- System.out.println("x = "+(x));//是3
- System.out.println("++y = "+(++y));
- // 当程序运行到这里的时候,程序先对y进行了自增的处理,在输出之前y就已经变成了3,所以你输出的结果就是3.
- System.out.println("y-- = "+(y--));
- //当程序运行到这里的时候,y仍然等于3,当程序把y输出之后,对y进行了自减的动作。如果你在这里的后面再次输出y,就会变成2
- System.out.println("y = "+(y));//是2
- //-------------------------------------------------------------------------------
- int i = 2, j = 2 ;
- i++ ;//此时程序运行到这里之后,这句代码过后,就会对i进行自增处理。就是说,下一句代码开始,i的值就是3了
- ++j ;//程序运行到这里的时候,马上就会对j进行自增处理。此时的j已经是3.
- System.out.println("i = "+i);// i = 3
- System.out.println("j = "+j);// j = 3
- //所以你输出的结果都是3
- //----------------------------------------------------------------------------------
- int m=0,n=1;
- //++m后,m马上自增,m等于1.
- //n--后,n仍等于1,下次调用n的时候n就会变成0
- //所以此时的(++m == n--)为true
- //m++此时的m为1,下次调用m时,m为2
- //所以(m++ == 1)为true
- //--n,此时的n马上自减,变为0。
- //所以(--n == 0)也为true
- //最终输出就是m=2,0=0咯
- if(++m == n-- & m++ == 1 || --n == 0)
- System.out.println("m="+m+",n="+n);// m=2,n=0
- else
- System.out.println("n="+n+",m="+m);
- }
- }
复制代码 |