Java 字符串到整数的转换错误

Java 字符串到整数的转换错误,java,parsing,floating-point,complex-numbers,Java,Parsing,Floating Point,Complex Numbers,我的字符串包含带正负号和字符的浮点数。基本上是复数。我必须先将它们从字符串中分离出来,然后进一步将它们作为实的和虚的分开,记住符号应该沿着数字保留 目前,我使用Split将它们作为子字符串分离,但在进一步分离实部和虚部时,我会在读取负号时出错。我需要帮助 这是我的字符串“-0.6026630828112783-0.6026630828112783 i+0.012343244232-0.90293888321i…” 我使用String.split(“[\Q+-\Ei]”);我得到-0.602663

我的字符串包含带正负号和字符的浮点数。基本上是复数。我必须先将它们从字符串中分离出来,然后进一步将它们作为实的和虚的分开,记住符号应该沿着数字保留

目前,我使用Split将它们作为子字符串分离,但在进一步分离实部和虚部时,我会在读取负号时出错。我需要帮助

这是我的字符串“-0.6026630828112783-0.6026630828112783 i+0.012343244232-0.90293888321i…”


我使用String.split(“[\Q+-\Ei]”);我得到-0.6026630828112783-0.6026630828112783i(第一个数字)。我还想将实数和虚数以及符号分开

使用下面的代码将字符串转换为int:)

对于拆分数字,首先在
+
-
之前添加分隔符Char。像

然后按分隔符字符分割。

您能分享您到目前为止的尝试吗?这是我的字符串“-0.6026630828112783-0.6026630828112783 i+0.012343244232-0.90293888321i…”我使用string.Split([\\Q+-\\Ei]”);我得到-0.6026630828112783-0.6026630828112783i(第一个数字)。我还想把真实的和想象的分开,请编辑你的问题,把你的评论作为问题的一部分。回答您问题的人需要所有详细信息,因为他们无法读取您计算机上的文件:)无法将任何小数转换为整数。将字符串转换为整数时应始终谨慎,并进行适当的前置条件检查和错误处理。这只是将数字四舍五入。不是我写评论时需要的解决方案,问题的信息较少。现在我也完成了;)@比拉拉姆德
Integer.parseInt("" +  Math.round(Float.parseFloat("-12.233")))