java 且 或 符号_Java 、、|、||、^、、、~、等运算符
&(按位与)
运算规则:两个为真才为真 (1&1=1 , 1&0=0 , 0&1=0 , 0&0=0)
例:3&5=1
3的二进制位是0000 0011,5的二进制位是0000 0101 ,那么就是011 & 101,由按位与运算规则得知,001 & 101等于0000 0001,最终值为1
&&(逻辑与)
运算规则:&&逻辑与也称为短路逻辑与,先运算&&左边的表达式,一旦为假,后续不管多少表达式,均不再计算,一个为真,再计算右边的表达式,两个为真才为真。
|(按位或)
运算规则:一个为真即为真(1|0 = 1 , 1|1 = 1 , 0|0 = 0 , 0|1 = 1)
例:6|2=6
6的二进制位0000 0110 , 2的二进制位0000 0010 , 110|010为110,最终值0000 0110,故6|2等于6
||(逻辑或)
运算规则:一个为真即为真,后续不再计算,一个为假再计算右边的表达式。
^(异或运算符)
运算规则:相同为0,不同为1 (1^0 = 1 , 1^1 = 0 , 0^1 = 1 , 0^0 = 0)
例 5^9=12
5的二进制位是0000 0101 , 9的二进制位是0000 1001,也就是0101 ^ 1001,结果为1100 , 00001100的十进制位是12
<
5<<2的意思为5的二进制位往左挪两位,右边补0,5的二进制位是0000 0101 , 就是把有效值101往左挪两位就是0001 0100 ,正数左边第一位补0,负数补1,等价于:result=num×2的n次方十进制位是20
>>(右移运算符)
5的二进制位是0000 0101,右移两位就是把101左移后为0000 0001,正数左边第一位补0,负数补1,等价于:result=num÷2的n次方,结果为1
~(取反运算符)
运算规则:将0变为1,1变为0
例:5的二进制位是0000 0101,取反后为1111 1010,值为-6
>>>(无符号右移运算符)
运算规则:
对于正数:无符号右移是高位补0,移多少位补多少个0
对于负数:正数的二进制,取反,再加1
java 且 或 符号_Java 、、|、||、^、、、~、等运算符相关推荐
- java乘方运算符号_Java 4. 运算符号
java运算符 运算符 用来指明对于操作数的运算方式 按照操作数的数目来进行分类 单目 双目 三目 a++ a+b (a>b)?x:y; 按照运算符的功能来进行分类 算术运算符 [+ - * / ...
- 位运算符Java与详解_java位运算符详解
java位运算符详讲 一.位运算符分类 java中位运算符主要有:按位与&.按位或|.按位非~.按位异或^. 在使用时,需要将运算数都转换为二进制再进行运算,若为负数则使用补码表示.二. ...
- java中换行符号_Java中的回车换行符/n /r /t分析
首先直接上结论: //换行时采用System.getProperty("line.separator") public void test1() { LogTable logTab ...
- java 的 非短路_Java 短路运算符和非短路运算符
短路运算符就是我们常用的"&&"."||",一般称为"条件操作". class Logic{ public ststic v ...
- java公社博客_Java的运算符
算数运算符 + - * / %(取余.取模) ++(自增1) --(自减1) ++ 放在操作数之后,会先取出操作数的值,在进行自增运算 放在操作数之前,会先执行自增运算,然后 ...
- java 全局变量 命名规则_Java 基础 运算符 命名规则 变量 循环
1.程序: 一组指示计算机执行行动或坐车判断的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上. 2.软件 与计算机操作系统有关的计算机程序,规程.规则,以及可能有的文件,文档及数据 3.软 ...
- java int 无符号_Java 无符号数据类型
Java数据类型教程 - Java无符号数据类型 Java不支持无符号数据类型. byte,short,int和long都是有符号数据类型. 对于有符号数据类型,值范围的一半存储正数,一半用于负数,因 ...
- java short 无符号_Java 表示无符号整数
在 java 中,所有的数字都是有符号的,即可以表示负数,也可表示正数,如:byte.short.int.long.float 和 double).例如:byte,长度为8位:如果是无符号的,则可以表 ...
- java将运算符号替换成_java基础——day02-1 数据类型转换与算数运算符
数据类型转换 自动转换 自动转换:将取值范围小的类型 自动提升为取值范围大的类型 例如:一个int类型变量和一个byte类型变量进行加法运算,结果会返回什么类型呢? packageday02;publ ...
最新文章
- BZOJ2131 免费的馅饼【线段树优化DP】
- 没有统计学基础可以学python-统计学专业应该学Java还是Python?
- 深入理解Java虚拟机04--类结构文件
- 关于ElasticSearch性能调优几件必须知道的事
- 基于CMake构建MSVC_CUDA及MinGW编译环境下的的OpenCV项目
- 【NOI2016】循环之美【莫比乌斯反演】【整除分块】【杜教筛】【类杜教筛】
- LAMP 补充----非原创
- OSError: cannot identify image file
- to load JavaHL Library解决方法
- json标注工具与labelme安装
- UOS U盘已经复制成功,有时卡死
- 正本清源:LBS(基于位置服务)技术——高精准IP地址定位的8大误区(上)
- python调用perl_从Python调用Perl脚本不断返回值
- 无法安装驱动此计算机,安装Windows系统时,提示“无法在此驱动器上安装Windows”...
- 机器学习入门实战——决策树算法实战Titanic数据集
- html去除背景颜色怎么设置,word背景颜色怎么去掉
- (Java启动错误)c.n.d.s.t.d.RedirectingEurekaHttpClient : Request execution errora
- DataX二次开发——(6)kafkareader、kafkawriter的开发
- 微信小程序 录像 录视频
- csdn博客使用反馈,bug