我可以用一些二进制逻辑替换值为 0,1,2 和 3 的开关,这些逻辑将在四个字段中设置值吗?



我有这个代码:

switch (buttonsValue)
{
case 0:
vm.ABtnVisible = false;
vm.BBtnVisible = false;
vm.CBtnVisible = false;
vm.DBtnVisible = false;
break;
case 1:
vm.ABtnVisible = false;
vm.BBtnVisible = false;
vm.CBtnVisible = false;
vm.DBtnVisible = true;
break;
case 2:
vm.ABtnVisible = true;
vm.BBtnVisible = false;
vm.CBtnVisible = false;
vm.DBtnVisible = true;
break;
case 3:
vm.ABtnVisible = true;
vm.BBtnVisible = true;
vm.CBtnVisible = true;
vm.DBtnVisible = true;
break;
}

有没有办法使用二进制逻辑,我可以获取buttonsValue数字并使用它来设置适当的值,而不是使用switch

如果buttonsValue[0..3]范围内:

vm.ABtnVisible = buttonsValue >= 2;
vm.BBtnVisible = buttonsValue == 3;
vm.CBtnVisible = buttonsValue == 3;
vm.DBtnVisible = buttonsValue >= 1;

最新更新