0での割り算

0で割ったときの違い。
忘れてたので。


intの場合。


int a = 0;
int b = 3;
int c = b / a;
System.out.println(c);
java.lang.ArithmeticException: / by zero

doubleの場合。


double a = 0;
double b = 2;
double c = b / a;
System.out.println(c);
→ Infinity

doubleの場合2。


int a = 0;
double b = 1;
double c = b / a;
System.out.println(c);
→ Infinity

BigDecimalの場合。


BigDecimal a = new BigDecimal(0);
BigDecimal b = new BigDecimal(3);
BigDecimal c = b.divide(a);
System.out.println(c);
java.lang.ArithmeticException: Division by zero