c语言case两个变量的组合,我可以使用带有两个变量的case/switch语句吗?

DashK..

21

一个按位运算符怎么样?而不是字符串,你处理"enums",看起来更"优雅".

// Declare slider's state "enum"

var SliderOne = {

A: 1,

B: 2,

C: 4,

D: 8,

E: 16

};

var SliderTwo = {

A: 32,

B: 64,

C: 128,

D: 256,

E: 512

};

// Set state

var s1 = SliderOne.A,

s2 = SliderTwo.B;

// Switch state

switch (s1 | s2) {

case SliderOne.A | SliderTwo.A :

case SliderOne.A | SliderTwo.C :

// Logic when State #1 is A, and State #2 is either A or C

break;

case SliderOne.B | SliderTwo.C :

// Logic when State #1 is B, and State #2 is C

break;

case SliderOne.E | SliderTwo.E :

default:

// Logic when State #1 is E, and State #2 is E or

// none of above match

break;

}

然而,我同意其他人的看法,25个案例的交换案例逻辑并不太漂亮,如果 - 在某些情况下可能"看起来"更好.无论如何.

单。我们在这里说“按位或”。参考:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators (2认同)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值