【问题标题】:How to parse string to int?如何将字符串解析为int?
【发布时间】:2011-07-01 05:43:29
【问题描述】:

我的字符串是 743.4445,我希望它显示 743,所以它必须解析为 double,然后解析为 int,所以我尝试这样

(int)(Double.valueOf(743.4445);

(实际上 743.4445 来自服务器,因此我不知道确切的值)

我该怎么办?

【问题讨论】:

  • 自己花点时间研究一下,比在这里写一个问题要快。
  • 为什么它不起作用?它看起来正确(尽管缺少右括号)您是否遇到任何错误?你能发布错误吗?

标签: java android parser-generator


【解决方案1】:

为什么不谷歌“java 获取整数”

double d = Double.valueOf(s.trim()).doubleValue();

哎呀,为什么不在字符串上使用 IndexOf 来寻找 .? :)

【讨论】:

  • 寻找“。”对于使用“,”作为分隔符(如“ru”)的语言环境效果不佳
【解决方案2】:

请试试这个。

将此值存储在一个字符串中并尝试一下。

字符串编号 = "743.4445";

(int)Double.parseDouble(number)

【讨论】:

  • @chirag : 第二个选项更合适,因为不应该使用硬编码值,因为这些值可能会改变
  • @Stuti,我怀疑这是意图,代码只是作为示例。
【解决方案3】:

为什么不使用NumberFormat.setParseIntegerOnly(boolean value) 方法?

例子:

String s = "743.5555";
NumberFormat format = NumberFormat.getInstance();
format.setParseIntegerOnly (true);
int value = format.parse(s).intValue(); 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-16
    • 1970-01-01
    • 2010-09-07
    • 2012-10-14
    • 1970-01-01
    相关资源
    最近更新 更多