最简单的方法是使用JRE 6标准API提供的Rhino JavaScript引擎.
编辑:根据评论,如果字符串是用户提供的,这可能是一个潜在的安全漏洞.一定要过滤除数字,大括号和数学运算符以外的所有内容.
我不知道哪个是最好的,但有“数学表达式评估器”包。
查看Java 数学表达式计算器(包含一个文件源代码)
网站使用示例:
java -cp meval.jar com.primalworld.math.MathEvaluator -cos(0)*(1+2)
java -cp meval.jar com.primalworld.math.MathEvaluator .05*200+3.01