-1
有4个属性,每个属性都可以激活。要知道哪一个被激活,我收到一个int值。使用按位和操作我得到1,2,4或8每个数字对应一个激活的属性。按位运算
if((state & 1) == 1) {
status = 1;
} else if ((state & 2) == 2) {
status = 2;
} else if((state & 4) == 4) {
status = 4;
} else if((state & 8) == 8) {
status = 8;
}
我想知道是否可以用一个按位运算来计算状态? 谢谢。
在一行代码中做什么?有4个不同的if语句来处理每个选项。它怎样才能凝聚在一条线上? –
您可以不使用任何代码行,因为这不会执行任何操作。你需要提供一个更现实的例子,很大程度上取决于块中的内容。 –
你怎么能考虑把4如果在一个单一的线? – Stefano