颠倒给定的 6 位无符号整数的二进制位。给出java代码和junit测试代码
时间: 2024-03-21 11:43:31 浏览: 49
以下是Java代码:
```
public class ReverseBits {
public static int reverseBits(int n) {
int result = 0;
for (int i = 0; i < 32; i++) {
result <<= 1;
result |= (n & 1);
n >>>= 1;
}
return result;
}
}
```
以下是JUnit测试代码:
```
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class ReverseBitsTest {
@Test
public void testReverseBits() {
assertEquals(964176192, ReverseBits.reverseBits(43261596));
assertEquals(-1073741825, ReverseBits.reverseBits(-3));
}
}
```
这个程序的主要思路是使用位运算将输入的无符号整数的二进制位颠倒,然后返回结果。JUnit测试代码测试了两个例子,分别是正数和负数,用于验证程序的正确性。
阅读全文