int a = 10;
a++;
a++;
System.out.println(a); // 12
a--;
System.out.println(a); // 11
// ==============사실상 안쓰는 문법=============================
a = 10;
++a;
System.out.println(a); // 11
--a;
System.out.println(a); // 10 --> 그렇다면 ++a 와 a++는 같은건가??
// ==============시험용 틀리라고 내는 문제=============================
int c = 10;
int d = 10;
System.out.println(c);
System.out.println(d);
int result = ++c + d++;
System.out.println(result); // 21
System.out.println(c); // 11
System.out.println(d); // 11 ---> 메모리가 변했다... : 위에서 c = c + 1을 한 후에 계산에 사용했기 때문!!!
// 해석
1) ++c는 전위 증가 연산으로, c의 값을 1 증가시킨 후 계산에 사용합니다. c의 값은 11이 됩니다.
2) d++는 후위 증가 연산으로, d의 값을 계산에 사용한 후 d의 값을 1 증가시킵니다. d의 값은 10이 됩니다.
3) 이제 ++c의 결과인 11과 d++의 결과인 10을 더합니다.
따라서 11 + 10의 결과인 21이 변수 result에 할당됩니다.
'JAVA > DAY 05 _ 23.08.23' 카테고리의 다른 글
Operator 6. 논리 연산 (0) | 2023.08.29 |
---|---|
Operator 5. 비교 연산 (0) | 2023.08.29 |
Operator4. 대입 연산 (0) | 2023.08.29 |
Operator 3. 부호 연산 (0) | 2023.08.29 |
Operator 2. 문자열 연산 (0) | 2023.08.29 |