-3
I는 JAVA 8이 코드 부분을 가지고JAVA에서 한 행 수식의 여러 사전/사후 증가 순서는 무엇입니까?
I 그것이 같이 분할한다 이해 같이int x=3; int y = --x + x++ + --x ; System.out.print("y: " + y + " x: "+x);
:
- Y = 2 + X ++ + --x; x = 2
- y = 2 + 2 + - x; x = 2
- y = 2 + 2 + 1; x = 1
- y = 5; x = 2
그리고 인쇄됩니다. y: 6 x: 2
여기에서 작업 순서는 무엇입니까?
3 동작도 경우에 predecrementation 입니다된다 'y = --x + --x' y는 3이고 x는 1이됩니다. 이 예제에서 두 번째 --x는 2가 아닌 3으로 초기화됩니까? –
그렇습니다. 그래서 2 (pre) 감소와 1 (post) 증가는 결과적으로 1을 감소시키고,'x'의 값을 2로 변경합니다. –
최종 x가 2 인 이유를 이해합니다. 왜 second (pre)는 처음에'2 +2 + 1'을 부여한 후에 호출되지 않습니다. –