Code Bye

四则运算的java实现

本人这个非常简单,没有括弧,就是例如 1+2*6-4这样的
但是
java 知道 1+2*6-4 =xxx
也可以算出来
可是你不能输入怎么办呢?
本人的意思是,本人输入1,然后输入”+”,再输入2,这个java是算不出来的.
就是system.out.print(1+2) 可以显示为3
但是
当你拿到一个字符串以后,怎么把这个字符串转换为上面的这种呢?太伤脑筋了!
就好像 1+2*6-4
1,2,6,4 可以放入int[], +*-也可以char[],
但是1+2怎么告诉java 呢? 总不能 Int[0]+ char[0]+ int[1]啊!
求指导!
急急急!
谢谢~!
解决方案

5

一个个字符读…读出来是啥然后判断什么的,最后运算
Expression4J这个现成的..

15

小伙一看就知道数据结构没学好
全部的计算器都不是这么做的
而是将全部的字符都读进来
转换为后缀表达式
然后对后缀表达式进行操作,其中要用到栈

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明四则运算的java实现