第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

字符串到 BigDecimal 值

字符串到 BigDecimal 值

藍(lán)山帝景 2021-10-27 17:03:23
有人可以幫我得到確切的值BigDecimal嗎?我的代碼如下,import java.math.BigDecimal;public class HelloWorld{     public static void main(String []args){         String x="2.7955814565E10";         BigDecimal y=new BigDecimal(x);         System.out.println(y.toPlainString());     }}我在數(shù)據(jù)庫(kù)中的實(shí)際值是27955814565.0,一個(gè)String. 我從 DB 讀取這個(gè)字符串并將它設(shè)置在一個(gè) bean 類中,其中 amt 字段的類型為 string,使用值“2.7955814565E10”。當(dāng)我嘗試將其轉(zhuǎn)換為 a 時(shí),BigDecimal我得到 27955814565 而不是 27955814565.0。有人能告訴我是什么問題,因?yàn)閷?duì)于其余所有字段,將字符串值轉(zhuǎn)換為 BigDecimal 的邏輯工作正常,我想要 DB 中的確切值嗎?
查看完整描述

2 回答

?
侃侃爾雅

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超16個(gè)贊

如您所知,您的字符串采用科學(xué)記數(shù)法,要將這些值轉(zhuǎn)換為原始的 BigDecimal 或 Decimal,我們需要一種適當(dāng)?shù)姆椒ā?/p>


public class Test {

public static void main(String[] args) {

    double firstNumber = 12345678;

    double secondNumber = 0.000012345678;

    String firstNumberAsString = String.format ("%.0f", firstNumber);

    String secondNumberAsString = String.format("%.12f",secondNumber);

    System.out.println(firstNumberAsString);

    System.out.println(secondNumberAsString);

}

}


輸出將是:


12345678


0.000012345678


您也可以在 BigDecimal 上使用 Format 方法來(lái)實(shí)現(xiàn)您的目標(biāo)。


DecimalFormat decimalFormat = new DecimalFormat("0.0000000000");


查看完整回答
反對(duì) 回復(fù) 2021-10-27
  • 2 回答
  • 0 關(guān)注
  • 174 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)