기본 연산자
|
연산자 기호
|
의미
|
예시
|
결과
|
|
+
|
더하기
|
10 + 1
|
11
|
|
-
|
뺴기
|
10 - 1
|
9
|
|
*
|
곱하기
|
10 * 2
|
20
|
|
/
|
나누기
|
10 / 2 , 5 / 2 , 5 / 2.0 (형승격)
|
5 , 2 , 2.5
|
|
%
|
나머지
|
10 % 3
|
1
|
참고) 형승격 : 연산의 결과가 피연산자의 자료형보다 표현범위가 넓은 형식으로 변경되는 현상 (Type Promotion)
123.45 + 1 => double형 결과
double > int 표현범위가 double이 더 크기에 double을 따라 간다.
참고) 7 / 2
나누기는 뺄셈으로 진행된다.
7 / 2
-> 7 - 2 = 5
-> 5 - 2 = 3
-> 3 - 2 = 1
몫: 3 나머지 : 1
그렇기 때문에 0 으로 나눌 경우 심각한 에러를 발생한다.
=> 무한 연산으로 인해 열이 발생하여 터짐(검색: Divide by zero)
복합 연산자
|
연산자 기호
|
의미
|
예시
|
결과
|
|
+=
|
더하고 대입
|
A += 10
|
10 (A초기값 0)
|
|
-=
|
빼고 대입
|
A -= 2
|
8 (A초기값 10)
|
|
*=
|
곱하고 대입
|
A *= 2
|
16 (A초기값 8)
|
|
/=
|
나누고 대입
|
A /= 2
|
8 (A초기값 16)
|
비교 연산자
|
비교 연산자
|
의미
|
예시
|
설명
|
|
==
|
같다
|
A == B
|
A는 B와 같다
|
|
!=
|
같지 않다
|
A! = B
|
A는 B와 같지 않다
|
|
<
|
작다
|
A < B
|
A는 B보다 작다
|
|
>
|
크다
|
A > B
|
A는 B보다 크다
|
|
<=
|
작거나 같다
|
A <= B
|
A는 B보다 작거나 같다
|
|
>=
|
크거나 같다
|
A >= B
|
A는 B보다 크거나 같다
|
증감 연산자
| 증감 연산자 | 의미 | 예시 (A 초기값 10) |
| ++ | 다음 단계로 이동 | A++ : 11 |
| -- | 이전 단계로 이동 | A-- : 9 |
| A++ (후위 연산) | 모든 연산이 끝난 A를 다음 단계로 이동 | B = A++ => B = 10 (대입이 먼저 이뤄짐) |
| ++A (전위 연산) | 연산하기 전 A를 먼저 다음 단계로 이동 | B = ++A => B = 11 (증감이 먼저 이뤄짐) |
논리 연산자
|
AND (논리곱)
|
&&
|
A,B 둘다 참이면 참
|
|
OR (논리합)
|
||
|
A,B 둘중 하나라도 참이면 참
|
|
NOT (논리부정)
|
!
|
A가 참이면 거짓
|