用Java写的一个实现大数计算器的类

本文介绍了一位作者通过Java编程实现大数计算器的过程,该计算器接受算术表达式作为输入并返回计算结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为了练习一下Java编程,今天写了一个能进行大数计算的类,只需要调用本类的一个方法,以算数表达式为参数,方法就可返回计算结果。

import java.math.BigInteger;
import java.util.EmptyStackException;
import java.util.HashMap;
import java.util.Stack;


/*
 * 该类实现对大值数进行简单计算的功能
 * */
class BigNumCalculator {

	private String input; //要计算的表达式
	private String output;//结算结果
	Stack<BigInteger> operand;//操作数栈
	Stack<String> operator;//操作符栈
	HashMap<String, Integer> prect_map; //操作符和优先级之间的映射关系
	
	/*
	 * 无参构造函数
	 * */
	public BigNumCalculator() {
		this.operand = new Stack<BigInteger>();
		this.operator = new Stack<String>();	
		prect_map = new HashMap<String, Integer>();
		prect_map.put("+", new Integer(1));
		prect_map.put("-", new Integer(1));
		prect_map.put("*", new Integer(2));
		prect_map.put("/", new Integer(2));
	}
	
	/*
	 * 对输入的表达式进行简单的检查。合法字符:数字、+、-、*、/、(、)之外是否还包含别的字符)
	 * 返回值:如果表达式不包含非合法字符,则返回true,否则返回false
	 * 调用本类函数:无
	 * */
	private void check()throws ExpressionEx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值