Opa! Tudo certo, Elias? =)
Quando pedimos para consultarmos a documentação, nos referimos aos JavaDocs, por exemplo... Nesse caso, se você procurar nas classes do Java, encontrará uma chamada de Number
, da qual todos números que conhecemos herdam.
Se você olhar logo no começo desse link acima, você verá uma parte escrita "Direct Known Subclasse", com referência para as seguintes classe:
AtomicInteger
;AtomicLong
;BigDecimal
;BigInteger
;Byte
;Double
;Float
;Integer
;Long
;Short
.
Legal, temos várias classes, agora precisamos "adivinhar" qual pode substituir o Double
, quando precisamos de muita precisão...
Sabemos que as três últimas são utilizadas para representação de número inteiros, com mais ou menos casas, então podemos eliminar esses casos.
O Byte
, bom... Representa um byte, então também está fora.
Double
é justamente a classe que identificamos o problema, e Float
tem menos precisão ainda...
Ficamos somente com as quatro primeiras classes, AtomicInteger
, AtomicLong
, BigDecimal
, BigInteger
... Aqui você consegue eliminar tudo, só olhando para o nome das classes... Três delas contém Integer
ou Long
no nome, o que sugere que tratam de número inteiros, não decimais, como queremos. Aí fica fácil ver que a classe que podemos utilizar é a BigDecimal
, sacou? =)
Espero ter ajudado, mas qualquer dúvida não deixe de postar por aqui para que possamos ajudá-lo!
Abraço e bons estudos,
Fábio