某些应用场景:如用户是否实名制,是否绑定手机号,是否会员等等,这些状态可以同时存在也可以只有某项存在,最简单的做法是,每个状态一个字段,如是否绑定手机号码一个字段(isBindPhone),是否会员一个字段(isAssociator),是否实名制(isRealName),如此便可完成以上状态的并存或者单个状态,那么问题来了,如果我后续业务中还有加入其他的状态如是否注册邮箱,是否绑定银行卡等等(又改需求),如果一个字段一个字段加上去并非不可,只是工作量有点大,而且还需要修改数据库的表结构,让我们回想下linux系统中对文件的权限1,2,4,分别代表的是可执行,可写,可读,0则代表无权限,写到这里很多小伙伴应该是知道怎么使用了,这里用的是二进制的001代表可执行,010代表可写,100代表可读,那么只需要3位二进制数即可表示这三种状态的混合搭配,因为二进制只有0和1,0代表无,1代表有,如此一来再多可并发的状态只需要,一个状态加多一位二进制数即可