标签: java calculator
在Java中 如果是GUI输入(55.55 + 23424 * 4545) 这些输入将从String转换为整数。 问题是如何让程序区分这个计算中的数字和运算符?
答案 0 :(得分:2)
您必须解析之前收到的String,将数字和运算符放在不同的变量中。允许用户只输入数字并为操作员提供按钮可能更简单,因此您可以将它们视为信号。
解析这种String(如果允许所有类型的运算符和操作)最终需要编写完整的语法并从该语法生成解析器。
答案 1 :(得分:2)
使用正则表达式!数字的正则表达式:
number: [0-9]+\.?|[0-9]*\.[0-9]+
有关如何使用正则表达式正确解析字符串的信息,请参阅this tutorial。
答案 2 :(得分:2)
我在这里找到了一个有趣的想法:Is there an eval() function in Java?
在java中使用eval-analog。
此处还有一个特殊的评估项目:
http://java.net/projects/eval/pages/Home