2015-11-12 106 views
0

评估工科数学表达式,这是我的时刻代码:爪哇 - 在一个字符串

public class Evaluation { 

    String str1 = "1 + 2 + 3"; 

    public static double evaluation(String str1){ 
     if (str1 == null || str1 == ""){ 
      return 0; 
     } 

     return 0; 
    } 
} 

我希望能够做到这一点使用str1和评估无论是摆在那里的。

例如。 “1 * 3 * -2”应该返回-6等,它必须在

号码,话务员,号码,话务员的形式,数目

但我是一个很新的程序员,我有一点关于如何实现这一点的想法。 感谢您的帮助。

+3

1.您是否尝试过谷歌要求的呢? 2.您为了解决问题而编写了哪些代码? 3.你想自己实现这个算法吗?或者你正在寻找一个能为你做这个的库吗? –

回答

1

尝试ScriptEngine

ScriptEngine engine = new ScriptEngineManager().getEngineByName("JavaScript"); 
String input = "1 + 2 + 3"; 
System.out.println(engine.eval(input)); //prints 6