[이것이 자바다]연산자

Qyw·2023년 4월 26일
0

1. 부호/증감 연산자

++ -- 피연산자
=> 피연산자의 값을 1 증가, 1 감소시킴

피연산자 ++ --
=> 다른 연산을 수행한 후에 피연산자의 값을 1 증가, 1 감소시킴

2. 산술 연산자

1) + 덧셈 연산
2) - 뺄셈 연산
3) * 곱셈 연산
4) / 나눗셈 연산
5) % 나눗셈의 나머지를 산출하는 연산


1) 피연산자가 정수 타입이면 연산의 결과는 int 타입.
2) 피연산자가 정수 타입이고 그 중 하나가 long 타입이면 연산 결과는 long 타입.
3) 피연산자 중 하나가 실수 타입이면 연산의 결과는 실수 타입.(double)

3. 오버플로우와 언더플로우

오버플로우 또는 언더플로우 발생 시, 해당 정수 타입의 최소값 또는 최대값으로 돌아간다.

4. 정확한 계산은 정수 연산으로

정확한 계산이 필요하다면 실수 타입이 아닌 정수 타입으로 출력 되도록 변경하기

5. 나눗셈 연산 후 NaN과 Infinity 처리

  • 나눗셈 또는 나머지 연산
    1) 좌측 피연산자 정수 /,% 우측 피연산자 0 인 경우 예외 발생
    2) 좌측 피연산자 실수 /,% 우측 피연산사 0.0 또는 0.0f(float)
    => Infinity(나눗셈), NaN(나머지)
    => 이 결과에서 계속 연산을 시도 하여도 Infinity, NaN이 나온다.
    3) 그렇기 때문에 먼저 if 조건식 Double.isInfinity()와 Double.isNaN()를 사용한다. => 결과값은 true or false

0개의 댓글