Java 位运算:左移和右移示例详解
Java 位运算:左移和右移示例详解
位运算是一种重要的运算操作,在 Java 中主要包括左移、右移、与、或、异或等。本文将详细介绍左移和右移位运算,并通过示例代码演示其用法。
左移位运算示例
int x = 5; // 二进制表示为 00000101
int y = x << 2; // 左移两位,得到 00010100,即十进制的 20
System.out.println(y); // 输出 20
右移位运算示例
int x = 20; // 二进制表示为 00010100
int y = x >> 2; // 右移两位,得到 00000101,即十进制的 5
System.out.println(y); // 输出 5
带符号和无符号右移运算
需要注意的是,对于带符号右移位运算,如果原数是正数,则在右移位后高位补 0,否则在高位补 1。而对于无符号右移位运算,则在高位补 0。
例如:
int x = -5; // 二进制表示为 11111011
int y = x >> 2; // 带符号右移两位,得到 11111110,即十进制的 -2
System.out.println(y); // 输出 -2
int z = x >>> 2; // 无符号右移两位,得到 00111110,即十进制的 62
System.out.println(z); // 输出 62
通过上述示例代码,我们可以清楚地看到左移和右移位运算的工作原理以及带符号和无符号右移运算的区别。在实际编程中,合理运用位运算可以有效地提高代码效率和可读性。
原文地址: https://www.cveoy.top/t/topic/nEuR 著作权归作者所有。请勿转载和采集!