MapleStory Cookie With Halo

☕ JAVA/☕ Variables & Data Type

[JAVA]NaN과 Infinity

뉴이 NUEY 2024. 11. 21. 14:55
반응형

 

Infinity
: 정수를 0.0으로 나눌 경우. 무한대의 숫자.

무한대의 숫자가 나올 경우 java는 에러 대신 infinity를 반환합니다.


0으로 나눌 때와의 차이

0과 0.0으로 나눌 때 이러한 차이가 생기는 이유는 JAVA가 IEEE 754(부동 소수점 표준)을 따르기 때문입니다.
이 표준은 수학적으로 무한대와 정의되지 않은 숫자를 허용합니다.
0으로 나누는 것은 산술적으로 정의되지 않은 연산이기에 java.lang.ArithmeticException 예외가 발생합니다.

 


 

Double/Float.isInfinite(소수)
: infinity 다루기

반환타입은 boolean으로 if문으로 처리 가능합니다.

 


 

NaN
: Not a Number. 숫자가 아닌 값.

  • 자바에서 % 는 나머지를 구하는 연산자이기 때문에 0.0으로 나눌 시 NaN을 반환합니다.
  • 0으로 나눌 시에는 /나누기를 사용할 때와 마찬가지로 ArithmeticException예외가 발생합니다.
  • infinity와 마찬가지로 Double/Float에 이를 처리하는 함수 isNaN()이 존재합니다.

do-while문을 활용한 처리

이런 식으로 처리하면 좋을 것 같아 추가해봅니다.

반응형

'☕ JAVA > ☕ Variables & Data Type' 카테고리의 다른 글

[JAVA]연산자  (2) 2024.11.22
[JAVA]Iterator, ListIterator, Enumeration  (0) 2024.11.21
[JAVA]LinkedList와 Queue  (0) 2024.11.19
[JAVA]NULL  (0) 2024.11.19
[JAVA]ArraList  (0) 2024.11.19