3장. 연산자
* 연산자 종류
|
변환 |
산술 |
비교 |
논리 |
비트 |
대입 |
조건 |
단항 |
DATATYPE |
++ 증가 -- 감소 |
X |
NOT(!) |
not (~) |
X |
X |
이항 |
X |
+,-,* /,%(mod) |
>, >= <, <= ==, != |
and(&&) or(||) |
and & or (|) |
= |
X |
삼항 |
X |
X |
X |
X |
X |
X |
a?b:c |
* 산술연산자
+ - * / ; 정수 몫
% ; 정수 몫을 제외한 나머지
int result = 10/3; ==> 3
int div = 10%3; ==> 1
++ ; 증가 ; increment 현재 정수값 + 1
X=5 |
X |
Y |
Y=X++ 1) Y=X 2) X=X+1 |
6 |
5 |
Y=++X 1) X=X+1 2) Y=X |
6 |
6 |
-- ; 감소 ; decrement 현재 정수값 -1
X=5 |
X |
Y |
Y=X-- 1) Y=X 2) X=X-1 |
4 |
5 |
Y= --X 1) X=X-1 2) Y=X |
4 |
4 |
* 비교연산자
>, >=, <, <=, ==, !=
10이 3의 배수인지 알아보자?
int div = 10%3;
boolean result = div == 0;
if(result==true) S.O.P("9는 3의 배수이다.")
* 대입연산자
1) 오른쪽값을 왼쪽으로 전달
2) == 구분한다.
3) 우선순위
'()' > 단항 > 이항(산술,비교,논리) > 삼항 > '='
int a = 10;
int b =20;
int temp = 0;
temp = a;
a = b;
b = temp;
// SWAP 알고리즘
S.O.P(temp);
S.O.P(a);
S.O.P(b);
* 삼항연산자
a?b:c
a: 조건 판단 ; true/fase (boolean 결과)
b: true ; 결과
c: false ; 결과