변수에 값을 담는 명령문인 대입문에 대해 알아보려고 합니다.
변수 식별자 = 식;
num1 = 1;
num2 = 2 + 3;
num3 = num1 + num2;
위에서 보면 우변에 상수가 올 수도 있지만, 식이 올 수도 있습니다. 그런 식을 만들기 위해 다양한 연산자가 사용됩니다.
아래표는 그 중 사칙연산에 사용되는 연산자입니다.
사칙 연산에 사용되는 연산자
연산자 |
설명 |
사용 예 |
+ | 덧셈 연산잔 | num = 1 + 2; |
- |
뺼셈 연산자 |
num = 3 - 1; |
* |
곱셈 연산자 | num = 2 * 3 |
/ |
나눗셈 연산자 |
num = 7 / 2; //계산결과는 3 |
% |
나눗셈의 나머지를 계산하는 연산자 |
num = 7 % 2; // 계산 결과는 1 |
여기서 우변의 식이 좌변의 변수에 대입되기 전에 먼저 계산됩니다. 그렇기 때문에 좌변의 변수를 우변에서 사용하는 것도 가능합니다. 다음은 그런 예입니다.
num = num + 3;
우변의 num + 3을 먼저 계산하여 새로운 num이 탄생합니다. 좌변의 num이 새로 초기화 되어 우변의 num과는 다르다는 이야기죠.
만약 int num = 2
num = num + 3; 이런 상황이라면 밑에 줄 좌변의 num은 5로 초기화됩니다.
복합 대입 연산자를 이용한 대입문
num = num + 3; -> num += 3;
복합대입 연산자는 위의 식과 동일 하다는 이야기입니다.
오른쪽 명령문의 '+=' 이 부분이 복합대입 연산자입니다.
복합 대입 연산자들
연산자 |
설명 |
사용 예 |
+= |
기존의 변수에 우변의 값을 더하는 연산자 |
num += 1; |
-= |
기존의 변수에서 우변의 값을 빼는 연산자 |
num -= 2; |
*= |
기존의 변수에서 우변의 값을 곱하는 연산자 |
num *= 2; |
/= |
기존의 변수를 우변의 값으로 나눈 몫을 좌변에 대입하는 연산자 |
num /= 2; |
%= |
좌변의 변수를 우변의 값을 나눈 나머지를 좌변에 대입하는 연산자 |
num %= 2; |
증가 연산자와 감소 연산자
num++;
++num;
이 명령문은 변수의 기존 값에 1을 더해서 그 결과를 다시 num에 대입합니다. 그러니까 num 변수의 값이 원래 2였다면 위 명령문을 실행하고 난 다음에는 3이 되겠죠.
결국 num = num +1; num +=1; 의 식들과 같은 연산 명령문입니다.
여기서 num+++; 명령문은 어떻게 될까요? 이런 명령문은 유효하지 않습니다.
반대로 num--; , --num; 1을 뺴서 그 결과를 다시 num에 대입하는 명령문입니다.
'자바 > 뇌를 자극하는 JAVA' 카테고리의 다른 글
switch 조건문 (0) | 2013.04.28 |
---|---|
if 조건문 (0) | 2013.04.28 |
배열의 선언, 생성, 이용 (0) | 2013.04.28 |
로컬 변수의 선언과 이용 (0) | 2013.04.27 |
자바의 기초 (0) | 2013.04.26 |