728x90
반응형
연산자란?
프로그램을 짤 때 변수나 값의 연산을 위해 사용되는 기호
- 산술 연산자
- 증감 연산자
- 복합 대입 연산자
- 비교 연산자
- 연산자 우선순위
산술연산자➕➖✖️➗
연산자 기능 예시
연산자 기능 예시 결과값
+ | 더하기 | 7+2 | 10 |
- | 빼기 | 7-2 | 5 |
* | 곱하기 | 7*2 | 14 |
/ | 나누기 | 7/2 | 3 |
% | 나머지 | 7%2 | 1 |
int num1 = 1;
int num2 = num1 + 2; // 1+2 = 3
int num3 = num2 - 1; // 3-1 = 2
int num4 = num3 * 3; // 2*3 = 6
int num5 = num4 / 2; // 6/2 = 3
int num6 = num5 % 2; // 3%2 = 1
✅ 0으로는 나눌 수 없기 때문에 0으로 나누게 되면 에러가 발생한다.
- 실수와 정수의 계산
- 실수와 정수의 계산에서는 형 자동 변환으로 실수형으로 변환된다.
double num7 = 9/2; // 4.0
int num8 = 9 /2 ; // 4
double num9 = 9.0 /2; //4.5
증감 연산자
//num1 = 1
//num2 = num1
num1 = num1 +1; // num1값은 2가된다.
num2 = num2 -1; // num2값은 3-1해서 2가된다.
이런 증감을 간단하게 줄여서 작성하기 위해 증감 연산자를 사용한다
num1++; // num1 = num1 + 1;
++num1; // num1 = num1 + 1;
num2--; // num2 = num2 - 1;
--num2; // num2 = num2 - 1;
✨연산자가 붙은 위치가 서로 다른데 위치에 따라 계산하는 순서가 다르다. 순서에 따라 값 또한 변하게 되니 주의해야한다.
- 전위형 증감 연산자 : 증감을 먼저 수행한 후, 결과 값 적용
- 후위형 증감 연산자 : 기존 값 적용 후 증감 수행
int num1 = 1;
int prefix = ++num1; // prefix = 2
inr num2 = 1;
int postfix = num1++; // postfix = 1
- prefix에서는 전위형을 사용했으므로 num1의 값을 먼저 증가 시킨 다음 prefix 에 넣는다.
- ⇒ num = 2, prefix = 2
- postfix에서는 후위형을 사용했으므로 num1의 값을 넣은 후 증가시킨다.
- ⇒ num = 2, prefix = 1
복합대입연산자
증감연산자는 1씩 증가와 감소를 시킨다. 하지만, 실제 계산에서는 다양한 값들이 대입해서 들어갈 것이다. 증감연산자와 마찬가지로 연산식을 줄여 사칙연산자와 나머지 연산자를 결합할 수 있다. 그리고 편하게 복합 대입 연산자로 활용이 가능하다.
// num1~5 모두 10일 때,
num1 += 5; // num1 -> 15
num2 -= 5; // num2 -> 10
num3 *= 5; // num3 -> 50
num4 /= 5; // num4 -> 2
num5 %= 5; // num5 -> 0
비교연산자
비교연산자는 boolean 타입으로 평가될 수 있는 조건식에 사용되며
- <
- =
- <=
✨ num 이 0보다 크고 100보다 작다고 표현할 때, 0<num<100 ❌ 1<num && num < 100 으로 작성해야함
등가 비교 연산자
두 항의 값이 동등한지 여부 판단할 때 사용
- ==
- !=
✨java에서의 ‘=’는 대입을 의미한다.
논리 연산자
- 논리 연산자는 AND연산자(&&), OR 연산자(||), NOT 연산자 ! 를 포함하며 boolean 타입을 반환
NOT 연산자(!)는 true 와 false 를 반대로 바꾸는 연산자
!true == false
!false == true
!!true == true
연산자 우선순위
우선순위 | 연산자 | 종류 |
---|---|---|
1 | 괄호 / 대괄호 | (). [] |
2 | 단항 연산자(부정 / 증감 연산자) | !, ++, —, ~ |
3 | 산술 연산자(곱셈 / 나눗셈) | #, /. % |
4 | 시프트 연산자 | <<, >> |
5 | 관계 연산자(대소 비교) | >,<, >=, <=, ==, != |
6 | AND 연산자 | && |
7 | OR 연산자 | |
8 | 조건 연산자 | ? : |
9 | 대입 연산자 | =, +=, -=, *=, /=, %= |
728x90
반응형
'LANGUAGE > JAVA' 카테고리의 다른 글
[JAVA] JAVA 배열(Array) 기본 개념 / 배열이란? 배열 생성 방법 (0) | 2023.04.21 |
---|---|
[JAVA] JAVA 제어문 - 반복문(while) / do-while구문 (0) | 2023.04.19 |
[JAVA] JAVA 제어문 - 반복문(for) (2) | 2023.04.19 |
[JAVA] 콘솔 입출력 / System.out.print & println & printf 구분하기 (0) | 2023.04.19 |
[JAVA] 자바 환경 변수 설정 이유 / Zulu JDK 다운로드 및 환경변수 설정 방법 (0) | 2023.04.18 |