我的思路是:先把字符串拆分开,然后判断各个字符代表的含义,再生成相应的表达式来计算。比如case
"+"
:要执行+的操作
,依此类推,要注意运算符号执行的顺序。可能要用很多判断。我只是这样想,没有具体实践下,改天有时间了试试,感觉挺有意思
^_^
-----------------------继续回答楼主的补充------
^_^
对于你补充的问题,可以这样来分析:
这种可能有点类似于搜索软件的索引文件。我的思路是这样的:软件每次启动时都要加载自己的“记忆文件”(暂时这样叫吧^_^),把自己之前转换过的表达式都记录下来的文件,key=输入的字符串,value=转换后的表达式。具体怎样存储要再做定算。。这样不就提高效率了,用户每次输入字符串先字符串比对,效率要比重新组合表达式高上许多,如果是已经转换过的字符串就返回存储的表达式,否则就重新组合然后存储并返回。