java中的|与||,&与&&的区别,与、或,非、异或、位运算

java中的|与||,&与&&的区别,与、或,非、异或、位运算java中的|与||,&与&&的区别,与、或,非、异或、位运算

大家好,又见面了,我是你们的朋友全栈君。

一、java中的|与||,&与&&的区别

其实java中的|与||,&与&&是有区别的,自己调试了下,发现了区别所在具体如下:

if (testA(a)||testA(b))

1、如果是 || 如果testA(b)为true,那么只会执行testA(a)而不执行判断方法testA(b),而 则会将testA(a)和testA(b)都去执行一次。

2、如果是 && 如果testA(b)为false,那么只会执行testA(a)判断方法,而则会将testA(a)和testA(b)都去执行一次。

您可以用debug模式打断点调试下就知道是否执行了判断方法。

二、下面再细讲讲与、或,非、异或、位运算

//移为运算的计算速度快


int a = 4,b = 2;

//1、&=   与运算  二进制中,只有同为1才是1
		a &= b;
		System.out.println("a: "+a);

//2、|=   非运算  二进制中只要一个为1就为1
		a = 4;
		b = 2;
		a |= b;
		System.out.println("a: "+a);

//3、^=   异或运算  二进制中只要是两者的值不一样那么就是1
		a = 4;
		b = 2;
		a ^= b;
		System.out.println("a: "+a);


//4、<<=  移位运算  相当于是a = a * Math.pow(2,b);
		a = 4;
		b = 2;
		a <<= b;
		System.out.println("a: "+a);

//5、>>=   移位运算  相当于是a = a / Math.pow(2,b);
		a = 4;
		b = 2;
		a >>= b;
		System.out.println("a: "+a);

//6、~   非运算  二进制所有的位数取反;
		a = 4;
		b = 2;
		a = ~a;
		b = ~a;
		System.out.println("a: "+a+" b: "+b);

//7、>>>=   移位运算  二进制统一向右移 b位,左边不管是什么都用0代替,这是与 >>的区别;
		a = 4;
		b = 2;
		a >>>= b;
		System.out.println("a: "+a+" b: "+b);
		System.out.println(8>>>1);























版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156782.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • LVS-DR与Keepalived高可用群集「建议收藏」

    LVS-DR与Keepalived高可用群集

    2022年4月3日
    346
  • vmware 安装 win10[通俗易懂]

    vmware 安装 win10[通俗易懂]1.下载安装vm软件,地址:VM下载2.下载win10iso镜像文件(1)下载win10安装工具:win10安装工具下载(2)下载完成后,选择给其他电脑安装ios文件即可得到win10的iso镜像文件(考验网速的时刻到了)。ps:试过各种百度出来的镜像文件,发现没有能用的,还是乖乖通过官方方式下载吧。3.安装win10ios镜像文件参…

    2022年6月29日
    28
  • VS2008 安装失败(“Web 创作组件”无法)

    VS2008 安装失败(“Web 创作组件”无法)今天安装VS2008时出现了问题,怎么都无法安装成功。于是在网上找答案,还真给找到了。贴出来大家学习一下。VisualStudio2008中文正式版可以从微软网站下载试用了,因为之前用英文版感觉比2005快一些,虽然.NETFramework3.5有点庞大,但还是可以选择开发2.0的项目,因此打算立马安装。试用期为三个月,足够长了,因此安装TeamSystem版本,体验

    2022年9月6日
    2
  • python 函数def

    python 函数def一、不同层级的调用importcountcount.add(2,3)print(count.add(2,3))在不同层级引用函数,不能直接引用,否则会报错:importcountModul

    2022年7月5日
    23
  • goland 激活码[最新免费获取]

    (goland 激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~S32PGH0SQB-eyJsaWNlbnNlSWQiOi…

    2022年3月26日
    94
  • hive、hadoop面试题

    hive、hadoop面试题有如下hive记录表records,记录车辆的过车信息:createtablerecords(idstring,//记录编号indatestring,//过车记录时间plate_nostring,//车辆号牌device_idint,//经过的设备编号)partitionedby(monthstring,daystring)rowformatdelimitedfieldsterminatedby’\t’storedasORC;1…

    2022年6月17日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号