public class ArithmeticBase extends java.lang.Object implements IArithmetic
OP_ADD, OP_BRACKETS_END, OP_BRACKETS_START, OP_DIVIDE, OP_MULTIPLY, OP_SUBTRACT
构造器和说明 |
---|
ArithmeticBase(java.lang.String exp)
四则运算
|
ArithmeticBase(java.lang.String exp,
int precision,
int roundingMode)
四则运算
|
限定符和类型 | 方法和说明 |
---|---|
java.math.BigDecimal |
calculate()
计算后缀表达式
|
static boolean |
compare(java.lang.String peek,
java.lang.String cur) |
java.math.BigDecimal |
getBigDecimal(java.lang.String numString)
按精确度计算结果
|
java.util.List<java.lang.String> |
getExpList() |
int |
getPrecision() |
int |
getRoundingMode() |
java.util.List<java.lang.String> |
getRpnList() |
void |
parse() |
java.math.BigDecimal |
popBack(java.lang.String op,
java.math.BigDecimal popBack)
操作数字2
|
java.math.BigDecimal |
popFront(java.lang.String op,
java.math.BigDecimal popFront)
操作数字1
|
void |
setPrecision(int precision) |
void |
setRoundingMode(int roundingMode) |
java.lang.String |
thisNum(java.lang.String thisNum)
操作待出栈数字
|
public ArithmeticBase(java.lang.String exp)
exp
- 四则运算表达式precision
- 精确到小数点后几位roundingMode
- 取舍模式public ArithmeticBase(java.lang.String exp, int precision, int roundingMode)
exp
- 四则运算表达式precision
- 精确到小数点后几位roundingMode
- 取舍模式public java.math.BigDecimal getBigDecimal(java.lang.String numString)
numString
- 数字字符串precision
- 保留小数位数roundingMode
- 进位public void parse()
public static boolean compare(java.lang.String peek, java.lang.String cur)
peek
- 栈顶字符串cur
- 当前字符串public java.math.BigDecimal calculate()
this.rpnList
- public int getPrecision()
public void setPrecision(int precision)
precision
- the precision to setpublic int getRoundingMode()
public void setRoundingMode(int roundingMode)
roundingMode
- the roundingMode to setpublic java.util.List<java.lang.String> getExpList()
public java.util.List<java.lang.String> getRpnList()
public java.math.BigDecimal popBack(java.lang.String op, java.math.BigDecimal popBack)
IArithmetic
popBack
在接口中 IArithmetic
op
- 操作符OP_popBack
- 出栈数字2public java.math.BigDecimal popFront(java.lang.String op, java.math.BigDecimal popFront)
IArithmetic
popFront
在接口中 IArithmetic
op
- 操作符OP_popFront
- 出栈数字1public java.lang.String thisNum(java.lang.String thisNum)
IArithmetic
thisNum
在接口中 IArithmetic
thisNum
- 待出栈数字