Java字符串指数

问题描述 投票:0回答:1

我将如何计算String number = "3^6"?有一些数学选项可以计算指数,但是我如何将字符串转换为Java数学类可以解决的问题?

java string exponent
1个回答
0
投票
String s = "3^6";
String[] sArr = s.split("\\^");
double[] dArr = {Double.valueOf(sArr[0]), Double.valueOf(sArr[1])};
System.out.println(Math.pow(dArr[0], dArr[1]));

这应该使您入门。打印:

729.0

当然,对于复杂的方程式,您将不得不编写相应的代码来进行处理。

如果您的方程式带有方括号,请输入Stack来检查左方括号和右方括号。并且如果方程式是这样的:3 ^ 6 ^ 2,则在循环中计算指数。


-1
投票

尝试使用ScriptEngineManager

    public static void main(String[] args) {
        ScriptEngineManager mgr = new ScriptEngineManager();
        ScriptEngine engine = mgr.getEngineByName("JavaScript");
        String foo = "3^6";
        try {
            System.out.println(engine.eval(foo));
        } catch (ScriptException ex) {
            Logger.getLogger(TestJava.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
© www.soinside.com 2019 - 2024. All rights reserved.