按位“取非”运算符 (~)
对一个表达式执行按位“取非”(求非)运算。
~ expression
实参
- 表达式
任何数值表达式。
备注
~ 运算符查看表达式的二进制表示形式的值,并执行按位求非运算。
表达式中的任何一位为 1,则结果中的该位变为 0。 表达式中的任何一位为 0,则结果中的该位变为 1。
当 ~ 运算符充当整型数据类型的操作数时,它不进行强制并返回与操作数具有相同数据类型的值。 当操作数是非整型数据类型时,该值在运算执行之前被强制为 int 类型,该运算符的返回值为 int 类型。
下面的示例阐释了按位 NOT (~) 运算符的用法。
var temp = ~5;
所得值为 -6,如下表所示。
表达式 |
二进制值(2 的补数) |
十进制值 |
---|---|---|
5 |
00000000 00000000 00000000 00000101 |
5 |
~5 |
11111111 11111111 11111111 11111010 |
-6 |