这句话是什么意思?

时间:2011-04-30 16:42:04

标签: java android

this website上找到它。

holder.icon.setImageBitmap((position & 1) == 1 ? mIcon1 : mIcon2);

我要求“位置& 1 ......” 我已多次看过这个陈述,但从来不知道这意味着什么:/虽然我觉得它很方便知道:P

谢谢!

3 个答案:

答案 0 :(得分:9)

&bitwise AND operator。基本上,(position & 1)正在检查位置的最低位是1还是0,这是检查position是奇数还是偶数的方法。

对于Java运营商的完全破产,请参阅例如http://download.oracle.com/javase/tutorial/java/nutsandbolts/opsummary.html

答案 1 :(得分:1)

position1position的{​​{3}}。

因此,如果1的最低有效位是1,它将返回0,否则返回{{1}}。

答案 2 :(得分:1)

单个&符号是按位AND运算。您通常使用它们来应用位掩码。在这种情况下,如果position的最后一个(最低有效)位为1,那么(position & 1) == 1将为真,因为& 1将除最后一位之外的所有内容归零“和”每个位“位置”与1。