【问题标题】:How to parse string containing negative number into integer?如何将包含负数的字符串解析为整数?
【发布时间】:2014-12-09 06:12:14
【问题描述】:

我的部分代码在这里!

bufferedReader=new BufferedReader (inputstreamreader);
message=bufferedReader.readLine ();// ex: message has (1,-3)
String[] msg=message.split (",") //I use comma (,) as deliminator
int x=Integer.parseInt (msg [0]);
int y=Integer.parseInt (msg [1]);

这清楚地解析,但问题是它失去了负号。即“消息”包含 (1,-3)。请帮助我在不丢失 -ve 符号的情况下进行解析。

【问题讨论】:

  • 您的代码看起来不错。在拆分打印之前,您收到的内容可能在发送端有问题。
  • 是的...问题出在套接字的客户端!!

标签: java android string parsing


【解决方案1】:
String message = "1,-3";
String[] msg = message.split(",");
int x = Integer.parseInt(msg[0]);
int y = Integer.parseInt(msg[1]);

System.out.println(x);
System.out.println(y);

工作没有问题。输出:

1

-3

【讨论】:

  • 谢谢...首先我得到了 NumberFormatException。现在我更正了它
  • @SuroorAhmmad 我想你首先得到了double number。这就是你得到NumberFormatException的原因。
【解决方案2】:

ParseInt 应该可以工作,但是您没有得到结果,因为String[] msg = message.split(","); 导致 2 个字符串带有“(1”和其他“-10)”尝试删除大括号

【讨论】:

  • 谢谢兄弟!实际上问题在于它是一个浮点数。现在我纠正了它
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-12-08
  • 2012-08-11
  • 2012-02-25
  • 1970-01-01
  • 2012-08-06
  • 1970-01-01
相关资源
最近更新 更多