0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

JAVA中的异或交换运算规则

汽车玩家 来源:IT知识课堂 作者:IT知识课堂 2020-05-05 23:21 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Java中的位运算符中有一个叫做异或的运算符,符号为(^)或者 Xor

异或8个字总结 相同出0 不同出1

int a=1;

int b=1;

System.out.println(a^b);

这里则输出 0

int a=12;

int b=0;

System.out.println(a^b);

这里则输出 12

小结: 相同的两个数会输出0既false ,另一个数为0 则输出它本身,下面为大家演示两个不同的数字

运算规则

其运算规则是:在两个二进制操作数的相同位中

如a=7; b=4;

a=0111; b=0100; (因为int是占据32位的,前面的位数都为0 ,所只展示后4位)

a^b=?

JAVA中的异或交换运算规则

得出 a^b =3

下面为大家详细讲解在不使用第三方的情况下交换两个属性中的值

我们要实现的是a=4; b=7;

公式为 a=a^b;

b=a^b;

a=a^b;

第一步分析:

JAVA中的异或交换运算规则

第一步结束后值为: a=3; b=7;

第二步:b=a^b;

JAVA中的异或交换运算规则

第二步结束后的值:a=3; b=4;

第三步:a=a^b;

JAVA中的异或交换运算规则

第三步结束后的值:a=7; b=4;

异或运算有三个特征,一个是0与一个数做异或操作还是本身,本身与本身做异或操作为0,异或操作还满足交换率。

利用a^a=0的特点实现这个功能

在一个数组中找出出现次数为奇数的,也可理解为出现一次的;

这里直接上代码;

JAVA中的异或交换运算规则

这里将会直接输出 5

下面是一些异或的基本知识,有兴趣的可研究一下;

1. a ^ b = b ^ a

2. a ^ b ^ c = a ^ (b ^ c) = (a ^ b) ^ c;

3. d = a ^ b ^ c 可以推出 a = d ^ b ^ c.

4. a ^ b ^ a = b.

电脑自带的计算机中可以输入十进制直接转换为2进制,大大的加快了我们理解的速度

JAVA中的异或交换运算规则

代码千万行,注释第一行。格式不规范,报错两行泪

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • JAVA
    +关注

    关注

    20

    文章

    2997

    浏览量

    115683
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Arm Neoverse CPU上大代码量Java应用的性能测试

    Java 虚拟机 (JVM) 内执行。JVM 必须先通过解释器即时 (JIT) 编译器将字节码转换为机器码,而运行时生成的机器码对 Java 应用的效率和性能至关重要。
    的头像 发表于 11-05 11:25 374次阅读
    Arm Neoverse CPU上大代码量<b class='flag-5'>Java</b>应用的性能测试

    Camellia算法的实现(基于开源蜂鸟E203协处理器)

    。camellia 加密算法 Feistel 结构具有完整的前后白化层,最后一轮的整个输出与后白化子密钥进行运算,攻击者无法获得纯子密钥,只能得到子密钥的
    发表于 10-30 07:04

    ExpeditionPCB管脚交换介绍

    mentor PCB设计器件管脚网络交换介绍
    发表于 10-28 16:56 0次下载

    risc-v浮点运算单元的使用及其设计考虑

    的应用。 在RISC-V,浮点运算单元分为单精度浮点数(32位)和双精度浮点数(64位),通常包括以下几种基本功能: 加法器/减法器:用于执行浮点数的加减运算。 乘法器:用于执行浮点数的乘法
    发表于 10-21 14:46

    Is交换机组成的环形网络,当位于主控节点的Ism网管交换机故障后,为什么环网其他交换机不受影响?

    当位于主控节点的交换机故障断掉,环网其他交换机是如何保持正常运行的?或者说什么原理让环网其他交换机不受影响?
    发表于 08-06 06:46

    KiCad 的自定义规则(KiCon 演讲)

    “  Seth Hillbrand 在 KiCon US 2025 上为大家介绍了 KiCad 的规则系统,并详细讲解了自定义规则的设计与实例。  ”   演讲主要围绕 加强 KiCad 的自定义
    的头像 发表于 06-16 11:17 1460次阅读
    KiCad <b class='flag-5'>中</b>的自定义<b class='flag-5'>规则</b>(KiCon 演讲)

    Java开发者必备的效率工具——Perforce JRebel是什么?为什么很多Java开发者在用?

    Perforce JRebel是一款Java开发效率工具,旨在帮助java开发人员更快地编写更好的应用程序。JRebel可即时重新加载对代码的修改,无需重启重新部署应用程序,就能让开发者即时看到代码更改的效果,从而缩短开发、调
    的头像 发表于 04-27 13:44 648次阅读
    <b class='flag-5'>Java</b>开发者必备的效率工具——Perforce JRebel是什么?为什么很多<b class='flag-5'>Java</b>开发者在用?

    Altium DesignerPCB设计规则设置

    在使用 Altium Designer 进行PCB设计时,除了电气间距(Clearance)等基础规则外, 导线宽度、阻焊层、内电层连接、铜皮敷设等规则也同样重要 。这些设置不仅影响布线效率,还决定了成品板的可制造性与可靠性。
    的头像 发表于 04-17 13:54 7048次阅读
    Altium Designer<b class='flag-5'>中</b>PCB设计<b class='flag-5'>规则</b>设置

    如何实现POE交换机串联?

    在现代网络环境,POE(以太网)交换机凭借其同时传输数据与电源的能力,广泛应用于无线接入点(AP)、IP摄像头、VoIP电话等设备的部署。通过串联POE交换机,可以轻松扩展网络覆盖范围,为更多设备
    发表于 03-25 19:10

    PoE交换机在安防监控系统的关键作用

    交换机在安防监控系统的关键作用。 什么是PoE交换机? PoE交换机是一种通过单根以太网线缆同时为网络设备提供数据传输和电源的设备,常用于IP摄像机、无线接入点(AP)和VoI
    发表于 03-24 16:41

    芯片设计的设计规则检查

    设计规则检查(Design Rule Check,简称DRC)是芯片设计的一个关键步骤,旨在确保电路设计的物理布局符合制造工艺的要求。可以把它类比为建筑设计的检查流程,确保建筑图纸
    的头像 发表于 03-04 14:58 1319次阅读

    Spire.XLS for Android via Java组件说明

    Spire.XLS for Android via Java 是一款专业的 Android Excel 组件,用于在 Android 手机应用程序创建、操作和转换 Excel 工作表,并且运行环境
    的头像 发表于 01-24 12:16 818次阅读
    Spire.XLS for Android via <b class='flag-5'>Java</b>组件说明

    运算放大器在音频处理的应用

    放大器(Operational Amplifier,简称Op-Amp)是一种具有高增益、高输入阻抗和低输出阻抗的电子元件。在音频处理运算放大器主要用于信号的放大和调理。通过运算放大器,可以将微弱的音频信号放大到足够的幅度,以
    的头像 发表于 12-18 15:38 2690次阅读

    SSM框架在Java开发的应用 如何使用SSM进行web开发

    。以下是对SSM框架在Java开发的应用,以及如何使用SSM进行web开发的介绍: SSM框架的组件及其作用 Spring :Spring是一个开源的Java/Java EE全功能栈
    的头像 发表于 12-16 17:28 2132次阅读

    MCU运算放大器的应用与比较

    MCU运算放大器的应用与比较 MCU内置OPA: 信号放大、提高精度运算放大器(Operational Amplifier,缩写OPA,op ampopamp),简称运放,是
    发表于 12-11 17:12