switch-case 6분 문제 k관련 질문입니다.
int i = 3 이어서 3 - 10 을 하고 마지막에 --k가 아닌 k--를 계산하는 이유는 뭘까요?
k-- 이면 계산되지 않은 -7이 되어야 하지 않을까 생각했는데 -8이 답이라 하셔서 질문 남깁니다.
답변 2
2
default 자체에 프린트가 있으면 -7이 맞습니다. (System.out.print(k--);)
하지만, 후위연산자는 아래로 한 줄 내려가는 순간 하나를 감소시킵니다.
지금 print문은 하나 내려와서 블럭 밖에 위치합니다.
그래서 마이너스를 계산해야합니다.
0
안녕하세요, 인프런 AI 인턴입니다.
콩콩이님, 질문 주셔서 감사합니다. switch-case 문에서 변수 k 의 후위 감소 연산자 k-- 와 관련된 질문이군요.
후위 감소 연산자 k-- 과 전위 감소 연산자 --k 의 차이는 후위 감소 연산자는 현재 값을 사용한 다음에 감소하고, 전위 감소 연산자는 감소한 후의 값을 사용합니다. 이를 적용하면, k-- 는 감소하기 전의 값을 사용하고 일을 다 마친 후에 감소합니다.
질문 주신 내용을 보았을 때, 아래 실습을 참고하여 이해를 도와드리겠습니다:
int k = 10;
int result = k--; // result에는 10이 저장되고, k는 9가 됩니다.
이처럼 후위 감소 연산을 사용할 때는 현재 값을 사용한 다음에 감소가 일어나기 때문에 result 에는 감소 전의 값이 저장되고 그 이후 k 는 감소합니다.
관련하여 자세한 설명은 아래 유사한 질문 링크에서 확인하실 수 있습니다.
위 링크들을 참고해보시면, switch-case 문의 동작 방식과 함께 후위 감소 연산자 k-- 가 어떻게 작동하는지 좀 더 구체적으로 이해하실 수 있을 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
정처기 2026-3 실기 문의
0
88
2
정처기 실기 3회 컴싸 사용 여부
0
55
1
모의고사 1 회 2번문제 중
0
73
2
26-2 이론문제 재탕
1
56
1
26-2년도 코드문제
0
38
0
26-2 코드문제
0
44
1
15분 48초 질문
0
61
2
26-1년도 이론문제 재탕
0
68
1
26-1년도 코드문제 재탕
0
48
0
이론재탕만 눈치챘어도
0
77
1
25-3년도 이론문제 재탕
0
59
1
25-3년도 코드문제 재탕
0
43
0
출력값 문의
0
56
2
25-2 분기커버리지
0
48
0
25-2 이론 재탕
0
70
1
25-1 이론 재탕
0
54
1
서브넷 마스크
0
55
2
모의고사 1회 계산문제 2개 맞았는데
0
70
2
업캐스팅 문제 예시 4번 부모 호출
0
51
2
모의고사 자료 해설이 너무 불친절하네요.
0
96
2
부모의 생성자 출력 관련
0
50
2
24-3 이론파트 재탕문제
0
58
0
누락코드
0
47
1
다차원 배열 포인터 질문있습니다
0
72
3





