|NO.Z.00047|——————————|BigDataEnd|——|Java&运算符.V14|——|Java.v14|运算符.v14|位运算符|编程|
一、[位运算符]——了解
### --- 位运算符概念
~~~ ——> & 表示按位与运算符,按照二进制位进行与运算,同1为1,一0为0.
~~~ ——> | 表示按位或运算符,按照二进制位进行或运算,一1为1,同0为0.
~~~ ——> ~ 表示按位取反运算符,按照二进制位进行取反,1为0,0为1.
~~~ ——> ^ 表示按位异或运算符,按照二进制位进行异或运算,同为0,不同为1.
二、编程代码
### --- 编程代码
/*
编程实现位运算符的使用
*/
public class BitTest {
public static void main(String[] args) {
// 1.声明两个byte类型的变量并初始化
byte b1 = 11;
byte b2 = 13;
// 2.打印变量的数值
System.out.println("b1 = " + b1); // b1 = 11
System.out.println("b2 = " + b2); // b2 = 13
System.out.println("---------------------------------------------------");
// 3.实现位运算符的使用
// b1的二进制为: 0000 1011
// b2的二进制为: 0000 1101
System.out.println( b1 & b2); // 按位与:同1为1,一0为0 按位与后的二进制为:0000 1001 => 转为十进制是:9
System.out.println( b1 | b2); // 按位或:一1为1,同0为0 按位或后的二进制为:0000 1111 => 转为十进制是:15
System.out.println( b1 ^ b2); // 按位异或:相同为0,不同为1 按位异或的二进制为:0000 0110 => 转为十进制是:6
System.out.println( ~ b1); // 按位取反:1为0,0为1 按位取反的二进制为:1111 0100
// 二进制1111 0100转为十进制 => 先减1: 1111 0011 => 按位取反:0000 1100 => 转为十进制:12 => 添加负号:-12
}
}
三、编译打印
### --- 编译
C:\Users\Administrator\Desktop\project>javac BitTest.java
### --- 打印输出
C:\Users\Administrator\Desktop\project>java BitTest
b1 = 11
b2 = 13
---------------------------------------------------
9
15
6
-12
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
分类:
bdv001-Java语言基础
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通