我有一个字符串数组,包含双打。一个示例可以是包含[5,。,2]的字符串。我想成为2,5的两倍。

我知道这很令人困惑,但是我得到这样的数字的方式是从类似“ y = 2.5x + 4.3”(称为ligning的变量)的输入中获得的。

while(erTal(ligning.substring((ligning.indexOf("x")-i),(ligning.indexOf("x")-i+1))) == true){
                        xVærdi.add(ligning.substring((ligning.indexOf("x")-i),(ligning.indexOf("x")-i+1)));
                        System.out.println("There's a number to the left of x. Der er tilføjet " + i + " tal i alt");
                        i++;
                    }


检查String是否为数字的方法:

public static boolean erTal(String str)  {
        if(str.equals("+") || str.equals("-") || str.equals("*") || str.equals("/") || str.equals("=")){
            return false;
        } else {
            return true;
        }
    }

最佳答案

您可以使用空字符串作为分隔符来连接元素(基本上是消除闪电),然后解析该字符串。

String[] ligning = {"2", ".", "5"};
String[] ligningReversed = new String[ligning.length];
for (int i = 0; i < ligning.length; i++) {
    ligningReversed[i] = ligning[ligning.length - i - 1];
}
double result = Double.parseDouble(String.join("", ligningReversed));

即使元素不是单个数字,这也将起作用。

10-05 23:11