在稍微复杂的项目中,经常会遇到需要对当前业务场景进行状态判断的需求,并且这里的状态可能是多种状态组合的方式,可能只一种状态,也可能是多种状态共存。这里就可以借助位运算来解决,用一个整型数值上不同二进制位上的0、1数值来表示不同的状态。这样做既可以避免使用多个状态flag时重复if else逻辑判断,也有利于并发场景下状态更新和判断。在很多时候可以起到事半功倍的效果。这里就简单介绍如何进行状态设计和状态判断。
归档: 2022/8
共 47 篇文章
共 47 篇文章
在稍微复杂的项目中,经常会遇到需要对当前业务场景进行状态判断的需求,并且这里的状态可能是多种状态组合的方式,可能只一种状态,也可能是多种状态共存。这里就可以借助位运算来解决,用一个整型数值上不同二进制位上的0、1数值来表示不同的状态。这样做既可以避免使用多个状态flag时重复if else逻辑判断,也有利于并发场景下状态更新和判断。在很多时候可以起到事半功倍的效果。这里就简单介绍如何进行状态设计和状态判断。