【问题标题】:Problems after converting string to double将字符串转换为双精度后的问题
【发布时间】:2018-02-04 18:58:08
【问题描述】:

我对 java 还很陌生,因此我不知道为什么这不起作用。你能告诉我为什么会出现这个错误吗?

我已经导入了java.text.NumberFormat

NumberFormat fmt1 = NumberFormat.getcurrencyInstance();
String r = "12579500";
double s = Double.parseDouble(r);
double t = fmt1.format(s);

编译时我得到:不兼容的类型:

string 无法转换为double

【问题讨论】:

  • 你是说String t = fmt1.format(s);
  • 这不可能是您的真实代码:“getcurrency”(全部小写?)请添加最小的可编译示例来演示您的问题。
  • 抱歉,其实是“getCurrencyInstance”
  • 是否需要将“t”改为字符串值?
  • 谢谢YCF_L!它在将“t”更改为字符串值后起作用。

标签: java double number-formatting


【解决方案1】:

fmt1.format(s) 返回一个String(根据NumberFormat 格式化的String)。
doubleString 是不可比较的类型。

final String formatted = fmt1.format(s);

顺便说一句,你在NumberFormat.getCurrencyInstance() 中打错了。

【讨论】:

    猜你喜欢
    • 2017-02-07
    • 2011-07-24
    • 1970-01-01
    • 1970-01-01
    • 2011-08-11
    • 1970-01-01
    相关资源
    最近更新 更多