当前位置: 代码迷 >> J2SE >> 怎么把一个字符串装换成一个表达式覆给一个变量(String str="2*3+5+8*7")如何 计算出结果
  详细解决方案

怎么把一个字符串装换成一个表达式覆给一个变量(String str="2*3+5+8*7")如何 计算出结果

热度:368   发布时间:2016-04-24 13:20:41.0
如何把一个字符串装换成一个表达式覆给一个变量(String str="2*3+5+8*7")怎么 计算出结果
如何把一个字符串装换成一个表达式覆给一个变量(String str="2*3+5+8*7")怎么 计算出结果

------解决方案--------------------
应该要用一个表达式解释器了
------解决方案--------------------
关注
------解决方案--------------------
觉得要用栈来实现
------解决方案--------------------
“觉得要用栈来实现”
正解!

------解决方案--------------------
使用栈来实现,先将其转为后缀表达式(转为:2 3 * 5 8 7 * + +),再进行计算。

实现起来是比较麻烦的,主要是由于运算符的优先级别问题,可以去搜搜“后缀表达式”或“逆波兰式”的资料。

如果你使用的是 JDK 6 的话,可以使用其提供的 JavaScript 脚本的 eval 函数来计算,JDK 6 以下的只有自行解析了。
  相关解决方案
本站暂不开放注册!
内测阶段只得通过邀请码进行注册!
 
  • 最近登录:Sat Sep 22 00:21:24 CST 2018
  • 最近登录:Sat Sep 22 00:21:24 CST 2018
  • 最近登录:Sat Sep 22 00:21:24 CST 2018
  • 最近登录:Sat Sep 22 00:21:24 CST 2018
  • 最近登录:Sat Sep 22 00:21:24 CST 2018