- 피연산자 개수에 따른 연산자 구분
① 단항 연산자
: 피연산자가 하나 존재 (+x, -x, -x)
ex) +5, -3, !8
② 이항 연산자
: 피연산자가 두개 존재 (x=y, x<y, x!=y)
ex) x = 10
③ 삼항 연산자
:피연산자가 세개 존재 (조건식 : true?false) → 피연산자 : 조건식, true, false
- 대입 연산자 : =
: 오른쪽 값을 왼쪽에 대입한다.
int x = 10;
int y = 20;
//x에 y의 값을 대입한다.
x = y;
//x값은 20.
- 산술 연산자 : +, -, *, /, %
: 우리가 하는 산수와 같다.
int x = 20;
int y = 9;
int Num; //산술한 값을 넣는 변수
// +
Num = x + y; //29 (20 + 9)
// -
Num = x - y; //11 (20 - 9)
// *
Num = x * y; //180 (20 * 9)
// /
Num = x / y; //2 (20 / 9의 몫)
// %
Num = x % y; //2 (20 / 9의 나머지)
- 복합 대입연산자 : +=, -=, *=, /=, %=
: 산술 연산자와 대입 연산자를 결합한 연산자
int x;
x = 10;
// += : 더하고 대입
x += 5; //x값 : 15
x = 10;
// -= : 빼고 대입
x -= 5; //x값 : 5
x = 10;
// *= : 곱하고 대입
x *= 5; //x값 : 50
x = 10;
// /= : 나눈 몫을 대입
x /= 5; //x값 : 2
x = 10;
// %= : 나눈 나머지를 대입
x %= 5; //x값 : 0
- 관계 연산자 : >, <, >=, <=, ==, !=
: 두개의 피연산자를 비교하여 참, 거짓을 도출하는 연산자
관계 연산자 | 예시 | true인 결과 |
> | a > b | a가 b보다 크다. |
< | a < b | a는 b보다 작다. |
>= | a >= b | a는 b보다 크거나 같다. |
<= | a <= b | a는 b보다 작거나 같다. |
== | a == b | a와 b는 같다. |
!= | a != b | a와 b는 같지 않다. |
- 증감 연산자 : ++, --
: 1만큼 증가하거나 감소한다.
int x = 5;
int a = ++x;
int b = --x;
//a값 : 6, b값 : 4
//연산을 먼저 하고 값이 대입됨
int c = x++;
int d = x--;
//c값 : 5, d값 : 5
//값이 먼저 대입 된후 x의 값이 연산된다.
등감 연산자는 피연산자의 어디에 붙어 있느냐에 따라 출력 되는 것이 달라진다.
- 논리 연산자 : AND, OR, NOT
: 피연산자의 논리곱(AND), 논리합(OR), 논리부정(NOT)을 수행한다.
논리 연산자 | 예시 | 내용 |
논리곱 (AND) : && | a && b | a값과 b의 값이 모두 true면 true |
논리합 (OR) : || | a || b | a값과 b값 중 하나만 true이어도 true |
논리부정 (NOT) : ! | !a | a의 상태를 부정 (a가 true이면 false, false이면 true) |
- 조건(삼항) 연산자
: 두개의 피연산자의 연산 결과에 따라서 나머지 피연산자의 값이 결정됨
조건식 ? 식1(true) : 식2(false)
//조건식이 true면 식1이 대입되고, false면 식2가 대입된다.
int x = 10;
int y = 20;
int result;
result = (x > y) ? 100 : 200;
//result 값 : 200
- 비트 연산자 : &, |, ^
: 데이터를 비트단위로 환산하여 연산을 수행하며, 다른 연산자보다 연산속도가 향상된다.
다만 실감이 올 정도로 속도가 빨라지지않아 잘 사용하지 않는다.
비트 연산자 | 예시 | 내용 |
& : AND 연산 | a & b | a와 b가 모두 1이면 1 |
| : OR 연산 | a | b | a와 b 중 하나라도 1이면 1 |
^ : XOR 연산 | a ^ b | a와 b가 같지 않으면 1 |
ex) x = 2, y = 3
※ 10진수 → 2진수
x = 2 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
y = 3 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
& | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
| | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
^ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
└ 결과 값
x & y = 2
x | y = 3
x ^ y = 1
'프로그램 공부 > Java' 카테고리의 다른 글
Java 기존 파일 가져오기 (0) | 2024.01.06 |
---|---|
Java 배열 (0) | 2024.01.06 |
Java 특수문자 & 서식문자 (0) | 2024.01.05 |
Java 변수 써보기 (0) | 2024.01.05 |
Java 환경변수(Path) 설정하기 (1) | 2024.01.01 |