“嗨,阿米戈!”
“再上一節關於按位運算符的小課。”
“你知道,除了邏輯運算符AND(&&)、OR(||)和NOT(!)之外,還有按位運算符AND(&)、OR(|)、NOT(~)、XOR(^ ), 正確的?”
“是的。Bilaabo 曾經就此給過很好的教訓。”
“嗯,關於這些操作員。我有兩件事要告訴你:”
“首先,除了 NOT (~),它們可以應用於布爾變量,就像邏輯運算符一樣。”
“其次,惰性評價不適用於他們。”
“看這個例子:”
代碼 | 等效代碼 |
---|---|
|
|
“左邊比右邊緊湊嗎?”
“是的。”
“它的意思是一樣的嗎?”
“是的。”
“非常正確。但現在使用按位運算符查看相同的表達式:”
代碼 | 等效代碼 |
---|---|
|
|
“換句話說,代碼是一樣的,但絕對會執行每一個操作。”
“注意,如果a為null,計算c2時會拋出異常!”
“啊,我現在看得更清楚了。”
GO TO FULL VERSION