[Java] 연산자

Minit88·2023년 2월 20일
0

[Java]

목록 보기
2/18
post-thumbnail

Lab_01 - 산술 연산자

산술 연산자

산술 연산자는 사칙연산에 사용되는 연산자(+, -, *, /)와 나머지 연산자(%)를 포함합니다.

산술 연산자의 동작은 우리가 알고 있는 일반적인 수학 연산과 거의 동일

int num1 = 1;
int num2 = num1 + 2; // num2 -> 3
int num3 = num2 - 1; // num3 -> 2
int num4 = num3 * 3; // num4 -> 9
int num5 = num4 / 2; // num5 -> 4
int num6 = num5 % 3; // num6 -> 1

나눗셈 연산자와 나머지 연산자를 사용할 때에는 우항에 0이 위치할 수 없다.

int    num1 = 9 / 0;   // 에러
double num2 = 9.0 / 0; // Infinity

int    num3 = 9 % 0;   // 에러
double num4 = 9.0 % 0; // 에러

나눗셈 연산자를 사용할 때 좌항,우항이 모두 int형이면 그 결과값은 int형이고.
좌항 또는 우항중 하나가 실수형이면 결과 값도 실수형으로 출력된다

double num1 = 9 / 2;   // 4.0
int    num2 = 9 / 2;   // 4
double num3 = 9.0 / 2; // 4.5

증감 연산자

어떤 정수 타입 변수가 가진 값을 증가시키거나 감소시켜야 할때, 증감 연산자를 사용할 수 있다.

num1++; // num1 = num1 + 1;과 같습니다.
++num1; // num1 = num1 + 1;과 같습니다.

num2--; // num2 = num2 - 1;과 같습니다.
--num2; // num2 = num2 - 1;과 같습니다.

증감연산자의 연산 순서가 증감연산자의 위치에 따라 달라질 수 있다는 점이다. 증감연산자가 피연산자보다 앞에 있으면 전위형 증감연산자, 뒤에 있으면 후위형 증감연산자라고 한다.

  • 전위형 증감연산자 : 증감 연산을 먼저 수행한 후, 그 결과값을 적용.

  • 후위형 증감연산자 : 기존의 값을 먼저 적용시키고 그 다음에 증감 연산을 수행.

복합 대입 연산자

복합 대입 연산자는 모든 사칙 연산자 및 나머지 연산자와 대입 연산자를 결합한 형태로 아래와 같이 표현할 수 있다.

num1 += 2;
num2 -= 2;

모든 사칙연산자와 나머지 연산자를 결합한 복합 대입 연산자의 예시,

## 대소 비교 연산자

// num1~5의 값을 모두 10이라고 한다면,
num1 += 3; // num1 -> 13
num2 -= 3; // num2 -> 7
num3 *= 3; // num3 -> 30
num4 /= 3; // num4 -> 3
num5 %= 3; // num5 -> 1

로 나타낼 수 있다.

  • num1 : 기존 10의 값에 3이 더해져 13이 출력
  • num2 : 기존 10의 값에 3이 빼져 7이 출력
  • num3 : 기존 10의 값에 3이 곱해져 30이 출력
  • num4 : 기존 10의 값에 3이 나눠져 몫인 3이 출력
  • num5 : 기존 10의 값에 3이 나눠져 나머지인 1이 출력
    이때 출력되는 값의 타입 형태는 정수형이다.

Lab_02 - 비교 연산자

비교 연산자는 boolean 타입으로 평가될 수 있는 조건식에 사용되며, 크게 대소 비교(>, <, <=, >=)연산자와 등가 비교(==, !=) 연산자로 분류됩니다.

대소 비교 연산자

대소 비교 연산자는 boolean을 제외한 나머지 기본 타입에 모두 사용할 수 있다.

이때 주의할 점은 "x가 1보다 크고 5보다 작다"를 표현할 때
1 < x < 5 이 아닌 , 1 < x && x < 5 으로 논리 연산자와 함께 작성해야 한다.

등가 비교 연산자

등가 비교 연산자는 모든 타입에 사용할 수 있는 연산자로, 두 항이 동등한지 yes or no 여부를 판단할 때 사용 . 주의할 점은 기본 타입의 값 끼리, 참조 타입의 값끼리만 등가 비교 연산자를 사용할 수 있다.
두 항이 동등하면 true , 동등하지 않으면 false를 반환한다.

Lab_03 - 논리 연산자

논리 연산자는 AND 연산자 &&, OR 연산자 ||, NOT 연산자 !를 포함하며, 공통적으로 boolean 타입을 반환합니다.

  • AND연산자(&&) : 두 항이 모두 true일 때 true를 반환하고, 피연산자 두 개 중 하나라도 true가 아니면 false를 반환한다.

  • OR연산자(||) : 피연산자 두 개 중 단 하나라도 true면 true를 반환하며, 피연산자가 모두 false인 경우에만 false를 반환

  • NOT 연산자(!): true와 false를 반대로 바꾸는 연산자이다.

// 아래의 비교 연산 결과는 모두 true입니다. 
!true == false 
!false == true
!!true == true

Lab_04 - 연산자 우선순위

주요 연산자 우선 순위를 표로 나타내면 다음과 같다.

profile
" To be BE "

0개의 댓글