Java:〜是什么意思

在此Java源代码中,我有以下代码行:


if ((modifiers & ~KeyEvent.SHIFT_MASK) != 0) ....

波浪号~是什么意思?


心有法竹
浏览 923回答 3
3回答

慕运维8079593

Tilde(~)在Java中执行数值的按位补码。

RISEBY

它是一元〜逐位补运算符(引用):仅与整数值一起使用反转位,即0位变为1位,反之亦然在所有情况下〜x等于(-x)-1另请参见Wikipedia上有关按位运算符的页面,该页面指出:按位NOT或补码是一元运算,对每个位执行逻辑求反,形成给定二进制值的一个补码。0变成1,反之亦然。例如:NOT 0111  (decimal 7)  = 1000  (decimal 8)在许多编程语言(包括C系列语言 )中,按位NOT运算符为“ ~”(代字号)。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java