java混合运算精度,Java实现四则混合运算

getNegativeNumSensitiveToken() {

if (NEGATIVE_NUM_SENSITIVE.size() == 0) {

NEGATIVE_NUM_SENSITIVE.addAll(TOKENs.keySet());

NEGATIVE_NUM_SENSITIVE.remove(')');

}

return NEGATIVE_NUM_SENSITIVE;

}

public static boolean isTerminateToken(final char token) {

Setkeys = TOKENs.keySet();

return keys.contains(token);

}

public static int getTokenId(final char token) {

return TOKENs.get(token) == null ? -1 : TOKENs.get(token);

}

public static int getTokenSize() {

return TOKENs.size();

}

}

enum CALCULATE_MODE {

INSTANCE;

private static char[][] RULES = {

// + - * / ( ) #

{ '>', '>', '', '>' }, // +

{ '>', '>', '', '>' }, // -

{ '>', '>', '>', '>', '', '>' }, // *

{ '>', '>', '>', '>', '', '>' }, // /

{ '', '>', '>', '>', 'o', '>', '>' }, // )

{ ' exec(final String expression) {

clean();

String exp = clearExpression(expression);

List result = new LinkedList();

for (int i = 0; i < exp.length(); i++) {

char c = exp.charAt(i);

if (TERMINATE_TOKENS.isTerminateToken(c)) {

if (processNegativeNumbers(exp, i))

continue;

if (BUFFER.length() > 0) {

result.add(Double.valueOf(BUFFER.toString()));

BUFFER.delete(0, BUFFER.length());

}

result.add(c);

} else {

BUFFER.append(c);

}

PREVIOUS_CHAR = c;

}

return Collections.unmodifiableList(result);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值