JAVA-初步认识-第三章-位运算符

一. 位运算符

这里的位是指二进制位,bit位运算的符号。

观看ppt可知,位运算符不止一个,是由多个运算符组成,甚至使用了之前定义过的运算符号。

二. 对不同的位运算符进行分析

a. &除了参与与运算外,还参与位运算,具体的位运算过程:6&3,一定要记得位运算是对二进制位进行计算,6的有效二进制位是110,而3的有效二进制位是011。&被运用到位运算中,仍然具备与运算的功能。对相同位置的二进制数进行逻辑运算,0代表着false,1代表着true。110&010=010,转为10进制数就是2。最终,6&3=2. 注意:(1) 6实际上是int类型,具有32位二进制数,但在进行位运算时,都是采用的有效位,对于多余的0位并没有参与运算。(2) &位运算还有一个特点,任意列举一个两个二进制数之间的&位运算,

0111-0101-1010-0110

&0000-0000-0000-1111

可以看出,这样位运算的结果就是截取了后四位的数据。特殊情况下,截取数据也是&位运算的特色。

b. 同样的,|位运算符的使用和&位运算符类似。|位运算的特点是,可以将两个二进制数的有效位保留,1是有效位,

和前面说有效位不是一个意思。

c. ^位运算,^位运算的特点是保留所有,有一个1的位置的数据。一个数异或位运算同一个数两次,则还是这个数。6^3=5, 6^3^3=6。

进过一次异或,数值完全发生了变化。如果转化为二进制来看的话,里面的二进制数完全发生了变化,相当于进行了加密。

为了保证数据的安全,加密过后要还原数据,将还原的程序设置在U盘内,这在日常生活中很常见。

上面这三种,通过借用逻辑运算符来充当位运算符,得出了一系列十进制的结果。但这些结果都不重要,

重要的是计算机利用这些机制,来做一些其他的用途。

d. ~反码位运算。~6的反码是-7。如何计算的要学会。

时间: 2024-10-10 07:43:30

JAVA-初步认识-第三章-位运算符的相关文章

(转)JAVA AJAX教程第三章—AJAX详细讲解

现在开始深入AJAX,这里还是按老思路,理论和实践相结合.这章的内容主要是讲解AJAX步骤详解,下一张将会用一个AJAX技术实现页面提示效果的实例来说明AJAX的实现. 一.AJAX步骤详解 AJAX实质上是遵循Request/Server模式来进行工作的,这个框架基本的流程包括下面几个具体的步骤: (1)       XMLHttpRequest对象初始化 (2)       发送请求 (3)       服务器接收请求并进行处理 (4)       服务器返回响应数据 (5)       客

Java图式(第三章 流程控制、数组)

Java图式(第三章 流程控制.数组) 1.分支语句 1)if-else语句 2)switch语句 2.循环语句 1)while语句 while返回值不是1/0,必须是布尔表达式 2)do-while语句 3)for语句 4)continue/break语句 标号是对语句块/循环命名.eg:A:循环 continue A:直接终止标记的外循环 3.数组(引用类型) 1)声明时不确定大小 2)引用:下标引用,无指针 3)实例化(存储单元分配)语句:new 4)数组初始化:不要求每一维一样大 4.字

java注释 命名 数据类型 基本类型转换 位运算符 逻辑运算符 三目运算符

一.java注释 1.单行注释  //注释内容 2.多行注释 /*注释内容*/ 3.文档注释(可用javadoc工具生成api文档,不过我还没试过)/**文档注释*/,文档注释可以在使用的时候看见注释. 文档注释常用的标记 @auther作者 @version版本 @deprecated 不推荐使用 @param 本放的参数 @return 返回值 @throws异常,同@exception 二.java的命名 1.项目名 字母全部小写 2.包名 全部小写 3.类名 首字母大写加驼峰 4.方法名

Java功底篇系列-03-一些位运算符你会如何理解?

话题一:异或 先看一段代码吧: 这段代码是用来实现a,b交换的. 异或是位运算符,0^1为1,其他情况都是0,这是一个加法不进位的功能! 这有什么用呢? 其实通过上面交换的例子,我们已经明白A^B^A将得到B,也就是可以实现数据还原的功能! 话题二:%与& 如果有一堆数据,我们想将这些数据通过HASH的方式,放入到桶中. 我们可以将桶进行编号,比如0号,1号,...N号桶. 给我们一个数据,我们要完成这个数据和桶的序号的映射转化关系,这样放入和查找就可以了. 由于对于任何一个非负数A,进行A%B

Java学习笔记—第三章

第三章  标识符.关键字和数据类型 1. Java标识符和关键字:在程序设计中,通常用一个记号对变量.常量.方法和类等进行标识,这个记号称为标识符.Java语言本身使用了一些标识符,这些标识符称为Java关键字,用户在命名标识符时应该避免使用这些Java关键字,否则将导致程序无法进行编译. Java中的关键字如下: abstract 抽象 assert 断言 boolean 布尔 break 中断 byte 字节 catch 捕获 char 字符 class 类 continue 继续 defa

java编程思想--第三章 操作符

额...继续搞些容易忽略的东西在下面,这章没打算精读,赶紧过,好戏应该在后面. 1.基本类型的赋值 比如 : int a =1; int b = a; 是进行值的复制,以后改变了a的值对b没有影响 引用类型的复制 比如: List<String> list1 = new  ArrayList<String>(); List<String> list2 = list1; 是进行的引用的复制,list1与list2 会同时指向 那个 ArrayList ,一个改变了它的状态

JAVA-初步认识-第三章-比较运算符逻辑运算符

一. 运算符的总类 先列举所有的运算符类型:算术运算符,赋值运算符,比较运算符,逻辑运算符,位运算符,三元运算符. 命名为什么叫运算符,英文叫operator, 难道说这是对操作的符号化表示?可以着一些英文的原版书籍来看. 本节将讨论比较运算符和逻辑运算符,这些仍旧属于java语言基础.等到讲完语法,函数,和数组之后,才是真正进入java语言的研究. 二. 在探讨比较运算符之前,先将视频中遇到的一个问题再重新学习一下.这里DOS报的错是没有找到主类,产生这样问题的原因只有两个:java运行的类名

201671010105 2016-2017-2《Java程序设计》第三章学习心得

通过学习第三章,我的总结有以下几点: 先说内容,第三章我们主要学习的是java的基本程序设计结构,学习了与之相关的一些内容,注释,数据类型,变量,运算符,字符串,输入输出语句,数组等等,在这些内容中,有些是在C语言中同样可以学到的,我们上学期已经学过,但也有很多是与c不一样的,是首次接触,比如注释,无论是java还是c语言,对于编程者而言,给自己编写的程序注释是一种良好的习惯,不止自己看懂,别人也能看懂,又比如数据类型,java中多了byte(字节型)和boolean(布尔型).在后面内容中也有

Java学习笔记—第三章 标识符、关键字和数据类型

第三章  标识符.关键字和数据类型 1. Java标识符和关键字:在程序设计中,通常用一个记号对变量.常量.方法和类等进行标识,这个记号称为标识符.Java语言本身使用了一些标识符,这些标识符称为Java关键字,用户在命名标识符时应该避免使用这些Java关键字,否则将导致程序无法进行编译. Java中的关键字如下: abstract 抽象 assert 断言 boolean 布尔 break 中断 byte 字节 catch 捕获 char 字符 class 类 continue 继续 defa