详谈:解释器模式(二)

接上文。

看到这个需求,我们很容易想到一种写法:将输入的字符串分割成单个字符,把数字字符通过switch-case转换为数字,再通过计算符判断是加法还是减法,对应做加、减计算,最后返回结果即可。

计划的确可行,但这实在太面向过程了,众所周知面向过程编程会有耦合度高,不易扩展等缺点。接下来我们尝试按照面向对象的写法来实现这个功能。

按照面向对象的编程思想,我们应该为公式中不同种类的元素建立一个对应的对象。那么我们先分析一下公式中的成员:

  • 数字:零到九 对应 0 ~ 9
  • 计算符:加、减 对应 +、-

公式中仅有这两种元素,其中对于数字的处理比较简单,只需要通过switch-case将中文名翻译成阿拉伯数字即可。

相关推荐
小飞侠hello7 小时前
解释器模式
解释器模式
小码过河.2 天前
设计模式——解释器模式
java·设计模式·解释器模式
会员果汁2 天前
23.设计模式-解释器模式
设计模式·解释器模式
拾光Ծ21 天前
进程程序替换与exec函数族详解 与进程替换实战:自主Shell命令行解释器实现
linux·运维·服务器·阿里云·解释器模式
__万波__21 天前
二十三种设计模式(二十)--解释器模式
java·设计模式·解释器模式
老朱佩琪!1 个月前
Unity解释器模式
解释器模式
Yeniden1 个月前
Deepeek用大白话讲解 → 解释器模式(企业级场景1,规则引擎2,表达式解析3,SQL解析4)
java·sql·解释器模式
萤虫之光1 个月前
详谈:解释器模式(三)
解释器模式
萤虫之光1 个月前
详谈:解释器模式(四)
解释器模式