如何读取按位运算符OR(|)的结果?

时间:2011-06-23 16:58:35

标签: android bitwise-operators bitwise-or

我想在Android XML文件中对按位运算符进行确认。例如这一行

android:layout_gravity="center_horizontal|bottom"

我应该如何阅读?从Java或Android继承的规则是否对按位运算符有自己的解释?

是否支持所有按位运算符?如果是的话,你能告诉我其他运营商的例子吗(链接还可以)?

由于

2 个答案:

答案 0 :(得分:2)

2|1 = 3
2&1 = 0
3&1 = 1

central_horizo​​ntal,bottom是整数,因此您可以使用此构造

    int center_horizontal = 0x05; //just for clarification
    int other_orientation = 0x10;
    int orietntation = center_horizontal | other_orientation;

//this condition returns true
    if((orientation&center_horizontal)==center_horizontal){
        //something to do
        }

答案 1 :(得分:1)

android_layout_gravity的值由Android代码解析。记录在案here,此处唯一识别的运算符为|。我不认为将|解释为按位OR运算符是规范的一部分。 (例如,center_horizontal为0x05且right为0x01;它们的按位OR仅为0x05。)