(举例题:字符串转换整数 (atoi))
有限状态自动机:(英语:finite-state machine,缩写:FSM)的简称,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。
有限状态机是一种对象行为建模工具,适用对象有一个明确并且复杂的生命流(一般而言三个以上状态),并且在状态变迁存在不同的触发条件以及处理行为。使用状态机来管理对象生命流的好处更多体现在代码的可维护性、可测试性上,明确的状态条件、原子的响应动作、事件驱动迁移目标状态,对于流程复杂易变的业务场景能大大减轻维护和测试的难度。
使用布尔标志或枚举来模拟情况。
具有仅对应用程序生命周期的某些部分有意义的变量。
循环遍历 if/else 结构并检查是否设置了特定的标志或枚举,然后在标志和枚举的某些组合存在或不存在时做出进一步的例外处理。
状态机四要素:
状态机可归纳为4个要素,即现态、条件、动作、次态。“现态”和“条件”是因,“动作”和“次态”是果。详解如下:
- 现态:是指当前所处的状态 例如当前用户下了个单 , 还没付款 , 那么现态就是待付款。
- 条件:又称为“事件”。当一个条件被满足,将会触发一个动作,或者执行一次状态的迁移 ,