1 描述
通常正负数通过 *-1进行,此时可以通过位运算实现,交换符号将正数变成负数,负数变成正数
2 实现
public static int reversal(int a) {
return ~a + 1;
}
3 总结
整数取反加1,正好变成其对应的负数(补码表示);负数取反加一,则变为其原码,即正数
本文介绍了一种使用位运算实现数字符号反转的方法,通过整数取反加1可将正数变为负数,反之亦然。该方法利用了计算机内部表示数值的原理,适用于需要快速改变数值符号的场景。
通常正负数通过 *-1进行,此时可以通过位运算实现,交换符号将正数变成负数,负数变成正数
public static int reversal(int a) {
return ~a + 1;
}
整数取反加1,正好变成其对应的负数(补码表示);负数取反加一,则变为其原码,即正数
1698
941

被折叠的 条评论
为什么被折叠?