如何知道十进制数是0x1000还是0x0100

时间:2015-03-17 13:55:19

标签: android bitmask

我有一组数据,列值为Type,我需要知道该值是0x1000还是0x0010还是0x0200,我不知道,请你帮忙

1 个答案:

答案 0 :(得分:2)

Android中的编程将接受一些存储整数的替代方法。

int mask = 0x1000;

有效。然后你可以像普通的int

那样进行比较
if (type == mask)
//do something

您还可以使用整数执行按位运算。这里最相关的可能是按位和(&),如果你使用的是面具。既然你把它称为掩码,我会假设你知道按位操作是如何工作的,只是告诉你如何调用它们。如果您不知道,请发表评论,我会更新。

int result = type & mask; //where both type and mask are ints
if(result == 0){
//type did not match mask
}
else if(result == type){
//all bits in the mask were present in type
}
else{
//some bits in type matched the mask
}

我认为应该让你到达你想去的地方。

快乐的编码!如果您有任何问题,请发表评论。