Java 拆分字符串将丢弃字符

Java 拆分字符串将丢弃字符,java,Java,我正在尝试制作自己的计算器,当我输入一个小数,并尝试使用拆分方法将字符串拆分为两段(例如:2.3+4.7),而不是将其拆分为2.3和4.7,它将其拆分为2和7。 不管我用圆点还是昏迷,结果总是一样的 String[] input = Num.split("[+-/%*]"); double num1 = Double.parseDouble(input[0]); double num2 = Double.parseDouble(input[1]); 请帮忙,我不知道如何

我正在尝试制作自己的计算器,当我输入一个小数,并尝试使用拆分方法将字符串拆分为两段(例如:2.3+4.7),而不是将其拆分为2.3和4.7,它将其拆分为2和7。 不管我用圆点还是昏迷,结果总是一样的

    String[] input = Num.split("[+-/%*]");
    double num1 = Double.parseDouble(input[0]);
    double num2 = Double.parseDouble(input[1]);

请帮忙,我不知道如何解决这个问题。

使用
String[]input=iNum.split(“[\+\-/%\*]”)

使用
String[]input=iNum.split(“[\\+\-/%\\*]”)

其中一些字符需要在正则表达式中转义,特别是
+
-
*


String[]input=iNum.split(“[\\+\-/%\\*]”)

其中一些字符需要在正则表达式中转义,特别是
+
-
*


String[]input=iNum.split(“[\\+\-/%\\*]”)

我认为您的正则表达式是错误的,在-之前需要一个转义字符,因为它用于指示正则表达式中的范围。如果您试图按+-/和*(标准操作)进行拆分,请尝试
[+\-\/*]
相反,我认为您的正则表达式是错误的,-前面需要一个转义字符,因为它用于指示正则表达式中的范围。如果您试图按+-/和*(标准操作)进行拆分,请尝试使用
[+\-\/*]
而不是只能添加的计算器是一个糟糕的计算器或者更改了只能添加的计算器是一个糟糕的计算器或者更改了它