Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总
游戏脚本-辅助自动化Android控件全解手册再战Android系列
Scratch编程案例软考全系列Unity3D学习专栏
蓝桥系列ChatGPT和AIGC

👉关于作者

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
有什么需要欢迎底部卡片私我,交流让学习不再孤单。

在这里插入图片描述

👉实践过程

位运算是计算机编程中的一种基本操作,它直接对整数在内存中的二进制位进行操作。本文将详细介绍Java和Kotlin中的位运算符,并提供示例代码和解析。

😜1. 与运算(AND)

1.1 概述

与运算符 & 用于对两个操作数的每一位执行逻辑与操作。只有当两个相应的二进制位都为1时,结果位才为1。

1.2 Java示例

public class AndOperation {
    public static void main(String[] args) {
        int a = 5;  // 二进制: 0101
        int b = 3;  // 二进制: 0011
        int result = a & b;  // 二进制: 0001
        System.out.println("a & b = " + result);  // 输出: 1
    }
}

1.3 Kotlin示例

fun main() {
    val a = 5  // 二进制: 0101
    val b = 3  // 二进制: 0011
    val result = a and b  // 二进制: 0001
    println("a and b = $result")  // 输出: 1
}

😜2. 或运算(OR)

2.1 概述

或运算符 | 用于对两个操作数的每一位执行逻辑或操作。只要两个相应的二进制位有一个为1,结果位就为1。

2.2 Java示例

public class OrOperation {
    public static void main(String[] args) {
        int a = 5;  // 二进制: 0101
        int b = 3;  // 二进制: 0011
        int result = a | b;  // 二进制: 0111
        System.out.println("a | b = " + result);  // 输出: 7
    }
}

2.3 Kotlin示例

fun main() {
    val a = 5  // 二进制: 0101
    val b = 3  // 二进制: 0011
    val result = a or b  // 二进制: 0111
    println("a or b = $result")  // 输出: 7
}

😜3. 异或运算(XOR)

3.1 概述

异或运算符 ^ 用于对两个操作数的每一位执行逻辑异或操作。只有当两个相应的二进制位不同时,结果位才为1。

3.2 Java示例

public class XorOperation {
    public static void main(String[] args) {
        int a = 5;  // 二进制: 0101
        int b = 3;  // 二进制: 0011
        int result = a ^ b;  // 二进制: 0110
        System.out.println("a ^ b = " + result);  // 输出: 6
    }
}

3.3 Kotlin示例

fun main() {
    val a = 5  // 二进制: 0101
    val b = 3  // 二进制: 0011
    val result = a xor b  // 二进制: 0110
    println("a xor b = $result")  // 输出: 6
}

😜4. 移位运算

4.1 左移运算(<<)

左移运算符 << 将操作数的所有位向左移动指定的位数,右边用0填充。

4.1.1 Java示例
public class LeftShiftOperation {
    public static void main(String[] args) {
        int a = 5;  // 二进制: 0101
        int result = a << 2;  // 二进制: 010100
        System.out.println("a << 2 = " + result);  // 输出: 20
    }
}
4.1.2 Kotlin示例
fun main() {
    val a = 5  // 二进制: 0101
    val result = a shl 2  // 二进制: 010100
    println("a shl 2 = $result")  // 输出: 20
}

4.2 右移运算(>>)

右移运算符 >> 将操作数的所有位向右移动指定的位数,左边用符号位填充。

4.2.1 Java示例
public class RightShiftOperation {
    public static void main(String[] args) {
        int a = 5;  // 二进制: 0101
        int result = a >> 1;  // 二进制: 0010
        System.out.println("a >> 1 = " + result);  // 输出: 2
    }
}
4.2.2 Kotlin示例
fun main() {
    val a = 5  // 二进制: 0101
    val result = a shr 1  // 二进制: 0010
    println("a shr 1 = $result")  // 输出: 2
}

4.3 无符号右移运算(>>>)

无符号右移运算符 >>> 将操作数的所有位向右移动指定的位数,左边用0填充。

4.3.1 Java示例
public class UnsignedRightShiftOperation {
    public static void main(String[] args) {
        int a = -5;  // 二进制: 11111111111111111111111111111011
        int result = a >>> 1;  // 二进制: 01111111111111111111111111111101
        System.out.println("a >>> 1 = " + result);  // 输出: 1073741823
    }
}
4.3.2 Kotlin示例
fun main() {
    val a = -5  // 二进制: 11111111111111111111111111111011
    val result = a ushr 1  // 二进制: 01111111111111111111111111111101
    println("a ushr 1 = $result")  // 输出: 1073741823
}

😜总结

通过上述示例,我们可以看到Java和Kotlin中的位运算符在使用上非常相似。位运算在处理低级数据操作、优化性能等方面非常有用。希望本文能帮助你更好地理解和使用位运算符。

👉其他

📢作者:小空和小芝中的小空
📢转载说明-务必注明来源:https://zhima.blog.csdn.net/
📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。

温馨提示:点击下方卡片获取更多意想不到的资源。
空名先生

更多推荐