No estoy seguro de por qué estás intentando lanzar y/o usar valueOf()
operaciones... simplemente haga un nuevo BigDecimal
objeto. Tiene un constructor para tomar un flotante, doble, cadena, etc.
d.set_cost(new BigDecimal(42.00));
:)
También puede cambiar su getString()
operaciones a getBigDecimal()
.
Entonces como:
d.set_cost(cursor.getBigDecimal(6));
Esto soluciona la creación de un String
temporal (e innecesario) ya que pareces estar después de obtener un BigDecimal
al final de todos modos.
Solo tenga en cuenta que si el valor de su ResultSet
las devoluciones no se pueden convertir en un BigDecimal
como si fuera una cadena "abcd", arrojará una Exception
, pero esto probablemente sea lo deseado ya que entonces se trata de datos incorrectos.