java 如何准确处理string类型的算式?

今天看java编程思想看到算法的优先级时,突然发现了一个小难点:如何用java处理string型的算式(如:“2+3*7-9%3”)

 

自己思考了下,有两种思路

1:将所有的运算符按优先级高低在算式里遍历一遍,碰到该运算符,计算出该运算符以及两端数字差生的结果,并将结果替换原运算符和两端数字;一次重复,最终可得出正确结果

 

该算法分析:由于要将所有运算符都遍历完,所以花费的时间会有些长,碰到些较简单的算式时不划算

 

2.遍历算式,碰到运算符即分析什么时候计算(思路不完整,待续)

 

该算法分析:花费时间少

 

 

具体的java代码待完善

 

 

 

以上两种方法均需先去算式中遍历花括号

 

方法3;

网上搜集到的另一种方法:用JavaScript包,然后使用JavaScript中的方法直接计算得出结果

简单易用,为相处更好的方法时用此法快速实现所需功能

 

本文待补充!

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值