Java黑皮书课后题第10章:*10.26(计算器)修改程序清单7-9,接收一个字符串表达式,其中操作符和操作数由0到多个空格隔开
生活随笔
收集整理的这篇文章主要介绍了
Java黑皮书课后题第10章:*10.26(计算器)修改程序清单7-9,接收一个字符串表达式,其中操作符和操作数由0到多个空格隔开
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
第10章:*10.26(计算器)
- 题目
- 程序清单7-9
- 本题代码:大幅优化升级
题目
程序清单7-9
对代码进行了修改:原代码将".“认做乘号,修改后将”*"作为乘号
public class qingdan {public static void main(String[] args) {// Check number of String passedif (args.length != 3){System.out.println("Usage: java Calculator operand1 operator operand2: ");System.exit(1);}// The result of the operationint result = 0;// Determine the operatorswitch (args[1].charAt(0)){case '+': result = Integer.parseInt(args[0]) + Integer.parseInt(args[2]);break;case '-': result = Integer.parseInt(args[0]) - Integer.parseInt(args[2]);break;case '*': result = Integer.parseInt(args[0]) * Integer.parseInt(args[2]);break;case '/': result = Integer.parseInt(args[0]) / Integer.parseInt(args[2]);}// Display resultSystem.out.println(args[0] + " " + args[1] + " " + args[2] + "=" + result);} }本题代码:大幅优化升级
(需要数据结构的玩意儿)
可以执行多步运算
可以支持多位运算
可以支持带括号的运算
可以支持带小数的数字
但依然只支持加减乘除
这里我们借助了jie位大佬的代码
https://www.cnblogs.com/woider/p/5331391.html
这里就不粘贴大佬代码了
有需要可以直接复制粘贴
但注意要将大佬代码里所有的“Calculate”替换为“Test26_Calculate”
或者将下面我给出的代码里所有“Test26_Calculate”替换为“Caculate”
总结
以上是生活随笔为你收集整理的Java黑皮书课后题第10章:*10.26(计算器)修改程序清单7-9,接收一个字符串表达式,其中操作符和操作数由0到多个空格隔开的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: Java黑皮书课后题第10章:**10.
- 下一篇: Java黑皮书课后题第10章:**10.