逆波兰表达式如何在Java项目中实现
短信预约 -IT技能 免费直播动态提醒
本篇文章给大家分享的是有关逆波兰表达式如何在Java项目中实现,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
逆波兰表达式
定义:传统的四则运算被称作是中缀表达式,即运算符实在两个运算对象之间的。逆波兰表达式被称作是后缀表达式,表达式实在运算对象的后面。
逆波兰表达式:
a+b ---> a,b,+
a+(b-c) ---> a,b,c,-,+
a+(b-c)*d ---> a,b,c,-,d,*,+
a+d*(b-c)--->a,d,b,c,-,*,+
a=1+3 ---> a=1,3 +
http=(smtp+http+telnet)/1024 写成什么呢?
http=smtp,http,+,telnet,+,1024,/
用Java实现逆波兰表达式
public class EvaluateValueOfArithmeticExpression { private static void evoe(String[] strArr){ String str = "+-*/"; Stack<String> stack = new Stack<String>(); //2.0遍历数组中的每一个元素 for(String s : strArr){ if(!str.contains(s)){//如果是数字,放入栈中 stack.push(s); }else{ int a = Integer.valueOf(stack.pop()); int b = Integer.valueOf(stack.pop()); switch(s){ case "+" : stack.push(String.valueOf(a+b)); break; case "-" : stack.push(String.valueOf(b-a)); break ; case "*" : stack.push(String.valueOf(a*b)); break; case "/" : stack.push(String.valueOf(b/a)); break ; } } } System.out.println(stack.pop()); } public static void main(String[] args) { //1.0创建数组 String [] strArr = { "0", "2", "-", "3", "+" }; evoe(strArr); }
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
逆波兰表达式如何在Java项目中实现
下载Word文档到电脑,方便收藏和打印~
下载Word文档
猜你喜欢
逆波兰表达式如何在Java项目中实现
本篇文章给大家分享的是有关逆波兰表达式如何在Java项目中实现,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。逆波兰表达式定义:传统的四则运算被称作是中缀表达式,即运算符实在两个
2023-05-31
2024-04-02
如何在Java项目中使用lambda表达式
这期内容当中小编将会给大家带来有关如何在Java项目中使用lambda表达式,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Java8引入了lambda表达式。lambda表达式并不是新功能,只是为了方便代
2023-05-31
正则表达式如何在Java项目中使用
本篇文章为大家展示了正则表达式如何在Java项目中使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.常用正则表达式规则正则表达式语法 一个或多个汉字^[\u0391-\uFFE5]+$ 邮政编
2023-05-31
正则表达式如何正确在Java项目中使用
这篇文章将为大家详细讲解有关正则表达式如何正确在Java项目中使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.匹配验证-验证Email是否正确public static void ma
2023-05-31
webservice方式如何在java项目中实现
webservice方式如何在java项目中实现?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。具体内容如下1、定义接口package org.enson.cha
2023-05-31
如何在C#项目中创建一个Lambda表达式和Lambda表达式树
如何在C#项目中创建一个Lambda表达式和Lambda表达式树?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1、表达式Lambda 表达式位于 => 运算符右侧的 la
2023-06-06
lambda表达式如何正确的在Java8项目中使用
这篇文章给大家介绍lambda表达式如何正确的在Java8项目中使用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在Java8 里面Lambda是最火的主题,不仅仅是因为语法的改变,更重要的是带来了函数式编程的思想,我
2023-05-31
责任链模式如何在Java项目中实现
这期内容当中小编将会给大家带来有关责任链模式如何在Java项目中实现,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。责任链模式责任链模式的定义:使多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的
2023-05-31
解释器模式如何在Java项目中实现
解释器模式如何在Java项目中实现?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。定义:给定一种语言,定义他的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中句子
2023-05-31
迭代器模式如何在java项目中实现
迭代器模式如何在java项目中实现 ?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。java 迭代器模式实例详解首先,为什么使用迭代器模式,目的就是通过一个通用的迭代方法,隐
2023-05-31
JAVA中如何实现表达式计算源码
这篇文章主要为大家展示了“JAVA中如何实现表达式计算源码”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JAVA中如何实现表达式计算源码”这篇文章吧。支持运算符:+-*/%><][!|&=;其中
2023-06-03
在java项目中如何实现一个单例模式
在java项目中如何实现一个单例模式?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。java设计模式--单例模式 单例设计模式Singleton是一种创建型模式,
2023-05-31
如何在Java项目中实现一个命令模式
如何在Java项目中实现一个命令模式?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。定义:将一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排
2023-05-31
在Java项目中如何实现实例化
今天就跟大家聊聊有关在Java项目中如何实现实例化,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Java实例化的几种方法总结Java创建有四种方式:(1)用new 语句创建对象,这是
2023-05-31
FloydWarshall算法如何在java项目中实现
这期内容当中小编将会给大家带来有关FloydWarshall算法如何在java项目中实现,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。求一个图中任意两点之间的最短路径 FloydWarshall
2023-05-31
在Java项目中如何实现一个可变参数列表
这篇文章给大家介绍在Java项目中如何实现一个可变参数列表,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Java可变参数列表详解1、接受的传入参数情况:如public void test(String ...args)
2023-05-31
如何在Java项目中的链接地址怎么利用正则表达式获取
这篇文章给大家介绍如何在Java项目中的链接地址怎么利用正则表达式获取,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1、正则表达式中Matcher中find()方法的应用。2、String对象中的 replaceAll
2023-05-31
如何在Java项目中实现一个抽象工厂模式
如何在Java项目中实现一个抽象工厂模式?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。定义:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类
2023-05-31
浮点运算如何在Java项目中实现
这期内容当中小编将会给大家带来有关浮点运算如何在Java项目中实现,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Java中浮点运算对于很多值浮点数都是采用其能够表示的离目标值最近的数来表示,这有可能会在计
2023-05-31