//与运算 &  规则 :都为1时才为1
        System.out.println( 7 & 9);
        /*
         *  7二进制 0111    
         *  9二进制 1001
         * -----------
         *        0001   ==1
         * */
        
        //或运算 | 规则:有一个为1,则为1
        System.out.println(7 | 9);
        /*
         * 7二进制 0111
         * 9二进制 1001
         * ----------
         *      1111 == 15
         * */
        
        //异或运算  ^ 规则:不同为1
        System.out.println( 7 ^ 9);
        /*
         * 7二进制 0111
         * 9二进制 1001
         * ----------
         *      1110 == 14
         *
         * */
        
        
        //取反运算 ~ 规则:按位取反
        System.out.println( ~7);//正数
        /*
         * 7二进制 0000 0000 0000 0000 0000 0000 0000 0111
         *      1111 1111 1111 1111 1111 1111 1111 1000  取反之后变成负数了
         *         1000 0000 0000 0000 0000 0000 0000 0111 补码
         *         1000 0000 0000 0000 0000 0000 0000 1000 原码  == -8
         *
         * */
        System.out.println(~-7);
        /*
         * 7二进制 1000 0000 0000 0000 0000 0000 0000 0111
         *         1111 1111 1111 1111 1111 1111 1111 1000  负数先转成补码
         *      1111 1111 1111 1111 1111 1111 1111 1001  补码
         *      0000 0000 0000 0000 0000 0000 0000 0110 得到负数的补码之后进行取反 (这时得到的是正数) 6
         * */

 
https://www.cnblogs.com/ismileboy/p/7241567.html

java中与运算,或运算,异或运算,取反运算的更多相关文章

  1. Java中的二进制及基本的位运算

    Java中的二进制及基本的位运算 二进制是计算技术中广泛采用的一种数制.二进制数据是用0和1两个数码来表示的数.它的基数为2,进位规则是"逢二进一",借位规则是"借一当二 ...

  2. Java中HashSet的重复性与判等运算重载

    目录 还有一个故事--(平行世界篇) 还有一个美丽的梦幻家园:java.util 并且还有一个善战的达拉崩巴:HashSet 还有另外一个故事(不是虚假传说) 还有一对涂满毒药的夺命双匕:equals ...

  3. Java中'&'与、'|'或、'^'异或、'<<'左移位、'>>'右移位

    public static void main(String[] args) { /* * &:与运算 * 全为1则为1,否则为0 */ System.out.print(1 & 0) ...

  4. 神奇:java中float,double,int的值比较运算

    float x = 302.01f;    System.out.println(x == 302.01); //false  System.out.println(x == 302.01f); // ...

  5. 037、Java中利用判断语句实现三目运算的功能

    01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...

  6. java中的7个位运算运算符

    位运算指的是针对整数的二进制进行的位移操作. 位运算提供比算术运算更高的效率,但是位运算的代码可读性较差,建议所有使用位运算的地方写上注释. Java中提供7个位运算符用于位运算. 左移(<&l ...

  7. bis和bic命令实现或和异或运算

    从20世纪70年代末到80年代末,Digital Equipment的VAX计算机是一种非常流行的机型.它没有布尔运算AND和OR指令,只有bis(位设置)和bic(位清除)这两种指令.两种指令的输入 ...

  8. 13、java中8中基本类型

    一.基本类型介绍 关键字 数据类型 占用字节数 取值范围 默认值 byte 字节型 1个字节 -128~127 0 char 字符型 2个字节 Unicode0~Unicode215-1 \u0000 ...

  9. Java中的二进制运算出错问题

    问题: 最近在做Java web项目中需要计算金额总和,在这里出现了一个问题是我以前没有关注到的: System.out.println(2.0-1.1); 执行时候的console中打印输出的是 0 ...

  10. 深入Java中的位操作

    「WTF系列」深入Java中的位操作 关于WTF系列 引 学完本章节你将学会位的基础概念与语法,并且还会一些骚操作!! 与.或.非.位移 原码.反码.补码 字节.位.超区间...... 开始本章节之前 ...

随机推荐

  1. css中标签,类名,id名的命名 语义化命名

    作为前端开发人,经常头疼于雷鸣,标签,id名的命名,不知道应该基于什么原则. 原则: 2 当命名的时候,问自己,这个元素是要来做什么?(根据使用目的).ad-banner 4 避免依靠位置和视觉效果命 ...

  2. vue 使用localStorage保存页面变量到浏览器变量中

    const STORAGE_KEY = 'todos-vuejs'//定义常量保存键值 export default{ fetch(){ return JSON.parse(window.localS ...

  3. 最简单的多线程死锁案例代码(Java语言)

    package com.thread.test; public class DeadLock { private static Object firstMonitor = new Object(); ...

  4. Hibernate_01_初体验

    hibernate开发的基本步骤: 编写配置文档hibernate.cfg.xml: 编写实体类: 生成对应实体类的映射文件并添加到配置文档中: 调用hibernate API进行测试. Hibern ...

  5. 指定DIV局部刷新的简单实现,很简单,但是网上搜到的大部分都很复杂

    脚本部分: <script type="text/javascript"> $(function () { setInterval(function () { $(&q ...

  6. jQuery中容易让人困惑的东西

    前言:jqueryt很灵活,太灵活了,可以说是他一个优点,也是他一个缺点,达到一种效果,十个人也许会用十种不同的方法来实现这个过程,结果一样,过程不一样,这到底是好,还是坏呢. 一,什么是jquery ...

  7. Visual Studio 推荐插件以及一些设置

    Microsoft Visual Studio 作为微软自家的 IDE 集成 NuGet 包管理器,是的引用一些不同版本组件DLL十分方便. 集成编译环境,强大的 Debug 断点.附加功能 项目模板 ...

  8. 【技术累积】【点】【java】【18】URLEncode

    基础概念 由于以URL的形式传递信息给服务器时,不允许URL中出现一些特殊字符和空格的,所以需要对URL进行编码处理. 原理是: 将要转码的字符转变为16进制: 从右到左,每两位前面加% 哪些字符是需 ...

  9. webpack学习(二)

    时下很火的react项目多用到webpack+ES6,本文只实践webpack的打包功能,不涉及react. 1.新建项目 新建的项目,命令模式下切换到项目根路径,用npm init命令生成packa ...

  10. JDBC对MySQL数据库存储过程的调用

    一.MySQL数据库存储过程: 1.什么是存储过程 存储过程(英文:Stored Procedure)是在大型数据库系统中,为了完成特定功能而编写的一组的SQL语句集.存储过程经编译存储在数据库中,用 ...