Net设计模式实例之解释器模式(Interpreter Pattern)(2)

四.解释器模式案例分析(Example

1、场景

   罗马字符转换为十进制数字,如下图所示
Net设计模式实例之解释器模式(Interpreter Pattern)(2)
Expression抽象类:抽象表达式,声明一个抽象的解释器操作,这个抽象类为抽象语法树中所有的节点所共享。
ThousandExpression:用来核对罗马字符中的 M 
HundredExpression:用来核对罗马字符中的C, CD, D or CM
TenExpression:用来核对罗马字附中的X, XL, L and XC
OneExpression:用来核对罗马字附中的I, II, III, IV, V, VI, VI, VII, VIII, IX

2、源码

3、运行效果
Net设计模式实例之解释器模式(Interpreter Pattern)(2)

五、总结(Summary

解释器模式(Interpreter Pattern),给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。当有一个语言需要解释执行,并且你可将该语言中的句子表示为一个抽象的语法树时,可以考虑使用解释器模式。









本文转自 灵动生活 51CTO博客,原文链接:http://blog.51cto.com/smartlife/273755,如需转载请自行联系原作者

上一篇:Hyperledger Fabric C#链码开发指南


下一篇:Web网站如何查看搜索引擎蜘蛛爬虫的行为