Java调用JavaScript实现字符串计算器代码示例

时间:2022-02-18 09:01:30

如果表达式是字符串的形式,那么一般我们求值都会遇到很大的问题。

这里有一种直接调用JavaScript的方法来返回数值,无疑神器。

代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package scc;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
public class Counter {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        ScriptEngineManager manager = new ScriptEngineManager();
        ScriptEngine SE = manager.getEngineByName("js");
        String Numbers = new String("1+2/5");
        try {
            String ans = SE.eval(Numbers).toString();
            System.out.println(ans);
        }
        catch (ScriptException e) {
            e.printStackTrace();
        }
    }
}

再分享一则java中执行javascript实现计算器的简单运算,代码如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
ScriptEngineManger sem = new ScriptEngineManger();
/*script引擎管理*/
ScriptEngine se= sem.getEngineByName("JavaScript");
/*script引擎*/
JTextField tf = new JTextField(10);
try
    {
    System.out.println (se.eval ("2+2"));
    /* 执行一段script 打印结果*/
    tf.setText(se.eval(tf.getText()).tostring);
    //将运算结果显示到文本框,类似计时器效果
}
catch (ScriptException e)
    {
    System.out.println ("算术式出错!");
}

总结

以上就是本文关于Java调用JavaScript实现字符串计算器代码示例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

原文链接:http://www.open-open.com/code/view/1434193321567