본문 바로가기

IT自主学習 (2023.05.23~)/Java(2023.05.23~)

プログラミング自主学習 29日目  ArithmeticExeption・Infinity・Nan

整数を0に分ける場合、無限に発散するため、整数には表現ができない。

0に分かる場合はArithmeticExeptionというunchecked exceptionが発生する。

 

int x = 5;

int y = 0;

int result = 5/0   ->  ArithmeticExeption 

 

しかし、被演算子の一つが実数であれば、無限を意味するinfiniteあるいはNaN(Not A Number)が発生する。

 

5/0.0 -> Infinity  5%0.0 -> NaN

 

結果値がInfinityとNaNであれば、データーに問題が発生するため、事前にチェックすることが重要である。

演算の前にDoubleを値をチェックするメソッドがあり、ブリアン型と活用することが多い。

 

boolean result = Double.isInfinite(変数)➡結果値がinfinityかをチェック

boolean result = Double.isNaN(変数)➡結果値がNaNかをチェック