本文最后更新于:June 30, 2023 pm
本文作者:[wangwenhai] # 概要:本文讲如何设计一个多状态开关
多状态开关数据表现形式
一般情况下,开关只有2个状态,0和1,这是大都数应用场景里面的开关。但是在复杂场景下,这个开关可能叫开关不合适,应该叫:多状态开关(或者选择器)。回顾以下,我们的家庭电饭煲,是不是可以有多个挡位:1000W,2000W;还有吹风机,也有一档,二档,类似于这种设备我们称之为:多状态开关。
开关拥有的挡位记作N,每一个挡位有2个状态:1和0,所以,N个挡位的开关,应该有2N个组合。
我们看一下吹风机的挡位,架设有2个挡位:A:冷风,B:热风,那转换成数据描述性是就是:
S=[[0],[0]]
当开关状态变化的时候,可以通过挡位的值来表示:
S=[[1],[0]]
此时表示冷风挡
但是开关又有互斥,串联,并联的形式,互斥表示只能有一个生效,串联表示每一个都生效,并联表示一起生效,但是我们在上层不负责维护这个关系,终端去实现即可,上层只需要发送开关的控制指令即可。
一个有2个挡位的开关JSON数据结构如下:
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!