做了个Java表达式计算器

做了个Java表达式计算器

Calc是一个用Java编写的算术表达式计算工具。它能够直接解析一个字符串形式的算术表达式并计算出结果。

Calc使用下面的语法:

E ->  I | E + I | E - I
I -> U | I * U | I / U
U -> + U | - U | <浮点数> | ( E ) | <函数> | PI | E

其中,<浮点数>是一个符合java规范格式的10进制浮点数,PI是圆周率,E是自然对数的底。

<函数>实现了一些常用函数,函数的一般形式是:

<函数名> ( <参数>... )

参数也是一个表达式(即E),可用的函数列表则请参考图形界面或java.lang.Math的帮助文档。

Calc内部使用双精度浮点型(double)进行运算,一个正确的表达式经Calc计算所得的结果应该等于相应java表达式的结果。

示例代码:
import yyq.prod.calc.Calculator;
...
double result = Calculator.calc("1 + 2 + sin(1)");
System.out.println(result);



下载:
http://www.blogjava.net/Files/20070716/calc.zip


部分source下载:
http://www.blogjava.net/Files/20070716/calc_src.zip

 

你可能感兴趣的:(做了个Java表达式计算器)