Ich bin mir nicht sicher, warum Sie versuchen, valueOf()
umzuwandeln und/oder zu verwenden Operationen... machen Sie einfach ein neues BigDecimal
Objekt. Es hat einen Konstruktor, um Float, Double, String usw. zu nehmen.
d.set_cost(new BigDecimal(42.00));
:)
Sie könnten auch Ihren getString()
ändern Operationen zu getBigDecimal()
.
Also wie:
d.set_cost(cursor.getBigDecimal(6));
Dies umgeht das Erstellen eines temporären (und unnötigen)String
da Sie anscheinend nach dem Erhalten eines BigDecimal
sind am Ende sowieso.
Beachten Sie nur, wenn der Wert Ihr ResultSet
return kann nicht in ein BigDecimal
konvertiert werden als wäre es ein String "abcd", dann wird es eine Exception
werfen , aber das ist wahrscheinlich gewollt, da man es dann mit schlechten Daten zu tun hat.