Por que Double.parseDouble (null) e Integer.parseInt (null) lançam exceções diferentes?
Este é um acidente histórico ou intencional? A documentação afirma claramente dois tipos de exceções para Double.parseDouble(...)
e uma para Integer.parseInt()
, mas parece inconsistente:
Integer.parseInt(null); // throws java.lang.NumberFormatException: null
Contudo
Double.parseDouble(null); // throws java.lang.NullPointerException
parseDouble
não faz uma verificação de nulo e apenas lança um NPE quando é encontrado, mas em parseInt
, a seqüência de entrada é verificada null
. Não consigo ver nenhuma boa razão para que eles se comportem de maneira diferente.
double
primitivo