java中缀表达式转后缀表达式并计算结果

本文介绍了如何使用Java将中缀表达式转换为后缀表达式,并提供了转换过程中获取优先级的代码片段。接着,文章展示了计算后缀表达式数组以得出最终结果的方法。

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

java中缀表达式转后缀表达式

转换算法

  • 转自尚硅谷韩顺平老师课堂内容
public class Calculator {
	public static void main(String[] args) {
		//先定义一个逆波兰表达式(3+4)*5-6 =》 3 4 + 5 * 6 —-
		String sunffixExpression = "3 4 + 5 * 6 -";
		
		List<String> list = getListString(sunffixExpression);
		System.out.println(list);
		
		int res = calculate(list);
		System.out.println(res);
		
		String inffixExpression = "1+((2+3)*4)-5";
		List<String> lStrings = getInffixExpressionList(inffixExpression);
		System.out.println("前缀表达式"+lStrings);
		List<String> sufixStrings = parseSunffixList(lStrings);
		System.out.println("后缀表达式"+sufixStrings);
		System.out.println("计算结果"+calculate(sufixStrings));
	}
	//将中缀表达式字符串转换为后缀表达式
	public static List<String
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值