3 回答

TA貢獻(xiàn)1719條經(jīng)驗(yàn) 獲得超6個(gè)贊
您可以通過(guò)標(biāo)準(zhǔn)實(shí)現(xiàn)您想要的java.text.DecimalFormat
import java.text.DecimalFormat;
...
Double value = Double.parseDouble("0.00000012");
DecimalFormat formatter = new DecimalFormat("0.#####E0");
String formatted = formatter.format(value);
System.out.println(formatted);
這打印出來(lái):1.2E-7

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超11個(gè)贊
使用您的 GWT NumberFormat,您可以嘗試以下方法,看看它是否有效?(例如使用 BigDecimal 而不是 Double)
System.out.println(NumberFormat.getScientificFormat().format(new BigDecimal("0.00000012")));

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超5個(gè)贊
funkyjelly 的答案中使用的相同格式模式應(yīng)該適用于 GWT 的NumberFormat類(lèi)型:
import com.google.gwt.i18n.client.NumberFormat;
...
Double value = Double.parseDouble("0.00000012");
String formatted = NumberFormat.getFormat("0.#####E0").format(value);
System.out.println(formatted);
添加回答
舉報(bào)