`

java之运算符思考

阅读更多
一直以来对这些位运算符的操作概念都是比较模糊的,这几天通过think java的第三章知识,终于理解java的位运算符的操作原理

位运算符
按位与(&):如果两个输入位都是1,则生成一个输出位1,否则是0

按位或(|):如果两个输入位里面只要有一个是1,则生成一个输出位1;只有两个输出位都是0,才生成0

按位异或(^):如果两个输入位不全是1或者0,即只要不相同,则产生输出位1;相同则生成0

按位取反(~):取反运算

移位操作运算符,运算对象是二进制的“位”
按位左移(<<):将操作符左边的运算对象向左移动右侧指定的位数,低位补0

按位右移(>>):“有符号”右移位运算符(>>)则将运算符左边的运算对象向右移动运算符右侧指定的位数。“有符号”右移位运算符使用了“符号扩展”:若值为正,则在高位插入0;若值为负,则在高位插入1。

无符号右移(>>>) :将运算符左边的运算对象向右移动运算符右侧指定的位数,它使用了“零扩展”:无论正负,都在高位插入0.这一运算符是C或C++没有的。

上面这些位此操作符都可以和=结合使用,意思把得到的结果再付给左边的变量。



分享到:
评论

相关推荐

    java 编程入门思考

    3.1 使用Java运算符 3.1.1 优先级 3.1.2 赋值 3.1.3 算术运算符 3.1.4 自动递增和递减 3.1.5 关系运算符 3.1.6 逻辑运算符 3.1.7 按位运算符 3.1.8 移位运算符 3.1.9 三元if-else运算符 3.1.10 逗号运算符 3.1.11 ...

    《JAVA上机指导》

    (三) 使用关系运算符和逻辑运算符 11 (四) 使用表达式语句与复合语句 11 (五) 使用选择语句 12 (六) 使用循环语句 14 实验 3 面向对象编程练习 17 一、实验目的 17 二、实验要求 17 三、实验...

    计算机程序设计(Java)-教案--单元二--Java语言开发基础.docx.docx

    一、新课导入与工程展示思考:回顾C语言学过的基本语法知识? 计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,当前为第3页。计算机程序设计(Java)-教案--单元二--Java语言开发基础全文共8页,...

    corejava基础重要知识点总结

    面向过程:需要人站在计算机的角度去思考问题 面向对象:需要人拿着代码模拟实现生活 类:一组类型相同事物高度抽象之后的集合概念 创建对象的模板 -》 class 对象:类的一个具体的实例 例子: 人和范冰冰...

    JAVA基础课程讲义

    第一章 JAVA入门 10 计算机语言发展史 10 机器语言 10 汇编语言 10 高级语言 10 其他高级语言 11 JAVA发展简史 12 JAVA为什么能够流行? 13 JAVA各版本的含义 13 JAVA技术体系架构 14 JAVA的特性和优势 14 JAVA应用...

    Java简明教程

     本书讲述Java面向对象编程的思想和方法,揭示Java的技术实现内幕和编译上的不完善之处,这对培养读者勤于思考、勇于实践和敢十创新很有帮助。在编排上采用“提出问题→引导读者思考→培养思考能力”的模式。  抓...

    《Java程序设计案例教程》教学课件02Java语言基础.pptx

    2.1 回顾与思考 【例2-1】编写一个Java应用程序,根据所给圆的半径,计算并输出圆的周长。文件名为Example2_1.java,其代码如下。 《Java程序设计案例教程》教学课件02Java语言基础全文共48页,当前为第4页。 2.1 ...

    Java实验项目A、Java结构化基础和数组编程

    三、实验结论和思考 1、类名等标识符能否使用中文?这样做好不好? 答:可以使用中文,但最好不要使用中文作为标识符,因为可能会出现乱码 2、利用java.util.Random类如何生成一个两位随机正整数,给出简单代码。 3...

    java深入解析

    目 录 第1章 基本概念 1 话题1 开门见山——测试你的Java水平 1 话题2 世外隐者——隐居深山的“关键字” 2 话题3 疑团满腹——标识符更深层的思考 6 话题4 鞭长莫及——我的特殊字符,你不能用! 10 话题5 移星换斗...

    leetcode双人赛-LeetCode-in-Java:领扣中国题目的Java语言解答,不断更新中

    leetcode双人赛继续思考,继续生活 直到 2018-09-23 01:55:03,我已经解决了1 / 716 的问题,而0仍然被锁定。 完成统计: JavaScript:0 Python:0 C++:0 Java:1 笔记: :locked: 意味着你需要从 LeetCode 购买一...

    《Java程序设计案例教程》教学课件05深入Java面向对象.pptx

    5.2 继承 继承可以充分利用现有的代码,解决编程过程中代码冗余的问题,它是实现代码重用的有效手段之一。被继承的类被称为父类或超类(superclass),由继承而得到的类被称为子类(subclass)。继承增强了代码的...

    实验项目A、Java结构化基础和数组编程

     三、实验结论和思考 1、类名等标识符能否使用中文?这样做好不好? 答:可以,但不建议这样做,因为关键字几乎都是英文的,这样会使中英文混淆,导致代码可读性差。 2、利用java.util.Random类如何生成一个两位...

    java 实验四 第五题

    编写一个实现如下功能的Applet:从它的HTML中取3个参数x、y、op做算术运算,其中x、y为int型数据,op为运算符(+、-、*、/之一),请显示x op y的结果。思考:怎样在Java应用程序中实现上述过程。

    C++大学教程,一本适合初学者的入门教材(part2)

    1.9 Java、Internet与万维网 1.10 其他高级语言 1.11 结构化编程 1.12 典型C++环境基础 1.13 C++与本书的一般说明 1.14 C++编程简介 1.15 简单程序:打印一行文本 1.16 简单程序:两个整数相加 1.17 内存的...

    C++大学教程,一本适合初学者的入门教材(part1)

    1.9 Java、Internet与万维网 1.10 其他高级语言 1.11 结构化编程 1.12 典型C++环境基础 1.13 C++与本书的一般说明 1.14 C++编程简介 1.15 简单程序:打印一行文本 1.16 简单程序:两个整数相加 1.17 内存的...

    面向对象技术与UML课件及源代码-by 南邮-陈杨

    由于时间仓促和作者水平有限,书中的错误和不妥之处敬请读者批评指正。 有关本书的意见反馈和咨询,读者可在清华大学出版社相关版块中与作者进行交流。 郭克华 2013年11月 目录 上篇面向对象技术 第1...

    计算机二级C语言刷题共六章源代码

    计算机二级C语言考试是计算机技术与软件专业技术人员的专业资格认证考试之一,它涵盖了C语言的基础知识和应用技能。C语言是一种通用的高级编程语言,具有灵活性强、执行效率高等特点,被广泛应用于系统软件、应用...

    Python不支持 i ++ 语法的原因解析

    在C / C ++ / Java之类的语言中,对整数变量进行自增或自减运算是标准的,可以分为前缀运算(++ i和–i)和后缀运算(i ++和i–), 每个都有细微的差异和不同的目的。 当这些语言的用户进入Python时,他们

    积分管理系统java源码-365Golang:《365天深入理解Go语言》

    积分管理系统java源码 《365天深入理解Go语言》 一、项目说明 本项目是记录自己在学习Go语言的过程中遇到的思考与感悟。本项目大量参考借鉴甚至是复制了其他类似的项目。感谢每一个项目,致敬每一位Gopher!尽可能的...

    代码之美(中文完整版).pdf

    33位大师,每个人对代码之美都 有自己独特的认识,现在一览无余的放在一起,对于热爱程序的每个人都不啻一场盛宴。 虽然本书的涉猎范围很广,但也只能代表一小部分在这个软件开发这个最令人兴奋领域所发生的事情。 ...

Global site tag (gtag.js) - Google Analytics