[Java 개념] 변수 (variable)
[공부하면서 헷갈렸던 부분, 잊지 말아야 할 부분 등을 정리한 내용으로, 모든 이론적인 내용을 포함하고 있지 않습니다.]
<핵심>
다음은 강사님께서 값에 대해 여러번 강조하신 내용과 그 내용을 설명하기 위한 예시이다.
1. 모든 값에는 타입이 있다. 2. 타입을 모르면 값을 알 수 없다. |
어떤 사람이 죽기 직전 1004라는 다잉메세지를 남겼다. 이 다잉메세지는 다음의 의미를 가질 수 있다.
1. 별명이 천사인 사람이 범인이다.
2. 같은 아파트 1004호에 사는 사람이 범인이다.
3. 자동차 번호가 1004인 차량의 소유주가 범인이다.
4. 생일이 10월 4일인 사람이 범인이다.
우선은 4개의 예시를 들었지만 더 많은 뜻을 유추할 수 있다. 만약에 이 사람이 다잉메세지 "1004"에 자동차 번호라는 내용을 함께 적었을 경우 이 메세지는 위 내용 중 3번의 의미를 확실하게 가지게 된다.
이처럼 값에 대한 정확한 타입을 표시해야지만 그 값이 무엇인지 정확하게 알 수 있게 된다.
<두 변수의 값 교환>
두 변수가 있을 때 값을 교환하려면 어떻게 해야 할까?
> 잘못된 방법의 예
int x = 10; x = y; |
y값을 x에 저장하면 기존에 있던 x의 값은 사라지기 때문에 x의 값을 y에 저장해도 소용이 없다.
x의 값이 사라지는 것을 막기 위해 하나의 임시 저장소를 만들어 이용하면 된다.
> 올바른 방법의 예
int x = 10; tmp = y; |
y의 값을 tmp에 저장한다. --> x에 접근하지 않기 때문에 x의 값에는 변함이 없다.
x의 값을 y에 저장한다. --> y의 값은 tmp에 저장되어 있기 때문에 y값이 사라져도 괜찮다.
tmp의 값을 x에 저장한다.
결과적으로 변수 x와 변수 y는 서로의 값을 교환하게 된다.
|
변수에 대한 내용은 여기까지 정리하겠습니다.
틀린 내용, 다른 의견이 있을 경우 댓글 남겨주시면 확인 후 수정하도록 하겠습니다.
그럼 이만 뿅🤗!