仅将字符串中的整数转换为int

时间:2018-04-19 19:16:52

标签: java string

我如何才能将字符串中的整数双精度转换为int? E.g。

String s = "3.0^3x+x-2.1+9.0

转换为:

s = "3^3x+x-2.1+9"

1 个答案:

答案 0 :(得分:0)

首先,您需要将输入字符串分隔为符号。 这会产生["3.0", "^", "3", "x", "+", "x", "-", "2.1", "+", "9.0"]

之类的东西

然后你创建一个for循环并检查每个十进制符号(contains('.')),然后检查它是否是整数,并用表示与整数相同的数字的字符串替换它。

之后,连接数组中的每个字符串并打印出来。

修改

要将字符串拆分为符号,您可以使用简单的技巧:

def isNumber(c):
    return c in "0123456789."

previous = s[0]
for(i in range(1, len(s))):
    if isNumber(previous) == isNumber(s[i]):
        insertCutAt(i)
    previous = s[i]