开发中总是存在着各种状态的保持。都是字段的话,相当麻烦。使用二进制状态存储就方便多了。现在一个int值你可以保存32个开关了。
public class a {
/**
* 获取当前index状态,[0,1];
* @param value 存储的开关数据int32
* @param index 第几位
* @return 当前位置的值
*/
static boolean value_bit(int value,int index){
return ( value >> --index & 1 ) > 0;
}
/**
* 处理后的存储数据 int32
* @param value 存储的开关数据int32
* @param index 第几位
* @param set 开关状态
* @return 当前位置的值[0,1]
*/
static int value_bit(int value,int index,boolean set){
index --;
if(set){
value = 1 << index | value;
} else {
value = ~(1<<index) & value;
}
return value;
}
public static void main(String[] args) {
int data = 0;
data = a.value_bit(data,1,true);
data = a.value_bit(data,2,true);
data = a.value_bit(data,3,true);
data = a.