java运算符那些事

& 按位与

&的运算规则为是先将两边的数转化为二进制,然后运算最终值,运算规则全都为真则结果为真,否则结果为假,1&1=1 , 1&0=0 , 0&1=0 , 0&0=0

3&5的结果为1

&& 逻辑与

&&先运算&&左边的算式,如果为假,则直接停止,后面不管有多少运算式都不再运算,如果为真则继续判断后面的式子,只有所有的条件全部成立,才会执行下面的程序

1 public static void test(int i,int j) {
2         /**
3          * 只有当i<5,j>8同时成立时才会输出满足条件
4          */
5         if(i<5&&j>8) {
6             System.out.println("满足条件");
7         }
8 }

| 按位或

|按位或和&按位与计算方式都是转化为二进制再计算,不同的是运算规则(一个为真则为真),1|0=1, 1|1=1, 0|1=1, 0|0=0

6|2: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:5的二进制位是0000 0101 , 9的二进制位是0000 1001,也就是0101 ^ 1001,结果为1100 , 00001100的十进制位是12

<< 左移运算符

5<<2:5<<2的意思是5的二进制左移2位,右边补0,5的二进制数是0000 0101,左移两位后是0001 0100,正数左边第一位补0,负数左边第一位补1

>> 右移运算符

5>>2:5>>2的意思是5的二进制右移2位,左边补0,5的二进制数是0000 0101,左移两位后是0000  0001,正数左边第一位补0,负数左边第一位补1

原文地址:https://www.cnblogs.com/wgblog-code/p/11164631.html

时间: 2024-08-29 20:36:12

java运算符那些事的相关文章

[ Java4Android ] Java运算符与表达式

学习视频来自:http://www.marschen.com/ 1.运算符的分类 2.各种运算符的使用方法 3.什么是表达式? java中的运算符 逻辑运算符 [ Java4Android ] Java运算符与表达式,布布扣,bubuko.com

Java运算符优先级(转)

Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 1 . 点 从左到右 双目   ( ) 圆括号 从左到右     [ ] 方括号 从左到右     2 + 正号 从右到左 单目   - 负号 从右到左 单目   ++ 自增 从右到左 单目 前缀增,后缀增 - - 自减 从右到左 前缀减,后缀减 ~ 按位非/取补运算 从右到左 单目   ! 逻辑非 从右到左 单目 “!”不可以与“=”联用 3 * 乘 从左到右 双目   / 除 从左到右 双目 整数除法:取商的整数部分,

Java数据类型(二)、Java运算符、流程控制

一.程序写作(创建对象的初始化过程) 1.目的/结果:输出一段话"..." 2.步骤: (1)创建一个基础类,main: (2)创建一块内存空间,用来存储这段话 ①先定义属性,name,sex,age等: ②再定义方法,需要重新创建新的class类,但不需要新的ma方法: (3)调用系统方法/库方法println,实现输出结果 ①在原有的类中创建新对象,将新的class类中的方法调用过来: ②运行,输出所有的内容. //---------------------------------

Java笔记2-数据类型变量Java运算符

我们编写软件,目的是为了高效的操作(增,删,改,查)数据. 数据类型 1.基本类型(8种)byte 字节型 -128~127short 短整型 -32768~32767int 整型 -2147483648~2147483647long 长整型float 单精度浮点数double 双精度浮点数boolean 布尔类型 true/falsechar 字符型 'A','我' 注意:a.Java中任意写一个整数默认是int类型,任意写一个小数默认是double类型b.char字符型用''修饰,字符串用"

java 编程思想-java运算符--以前不太明白的

1.java 运算符 主要是逻辑运算符和按位运算符;移位运算符-name tecmint.txt 逻辑运算符:And(&&) ; OR(||);Not(!) 按位运算符:And(&); OR(|); XOR(^);Not(~) 移位运算符:>> ; << ; >>> 按位运算符: public void test_and(){         int a = 128;     // 0000 0000 0000 0000 0000 0000

第五章 Java运算符

Java运算符 一 分类 算术运算符 赋值运算符 比较运算符 逻辑运算符 条件运算符 二 算术运算符 算术运算符主要用于进行基本的算术运算,如加法.减法.乘法.除法等. Java 中常用的算术运算符: 其中,++ 和 -- 既可以出现在操作数的左边,也可以出现在右边,但结果是不同. 即: 例1: int a = 1; int b = ++a;//让a先执行自增,再将值赋值给b System.out.println(a); System.out.println(b); 运行结果均为2: 例2: i

[转]Java 运算符的优先级

Java 运算符的优先级(从高到低) 优先级 描述 运算符 1 括号 ().[] 2 正负号 +.- 3 自增自减,非 ++.--.! 4 乘除,取余 *./.% 5 加减 +.- 6 移位运算 <<.>>.>>> 7 大小关系 >.>=.<.<= 8 相等关系 ==.!= 9 按位与 & 10 按位异或 ^ 11 按位或 | 12 逻辑与 && 13 逻辑或 || 14 条件运算 ?: 15 赋值运算 =.+=.-

【转】Java运算符优先级

原文网址:http://www.cnblogs.com/gw811/archive/2012/10/13/2722752.html Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 1 . 点 从左到右 双目 ( ) 圆括号 从左到右   [ ] 方括号 从左到右   2 + 正号 从右到左 单目 - 负号 从右到左 单目 ++ 自增 从右到左 单目 前缀增,后缀增 - - 自减 从右到左 前缀减,后缀减 ~ 按位非/取补运算 从右到左 单目 ! 逻辑非 从右到左 单目

java static那些事

 staic变量是怎么样执行的? public class Client {public static int i = 0;static {  i = 100;}public static void main(String[] args) {  System.out.println(i);}} 这段程序很简单,输出100,那么下面稍微修改下,代码如下: public class Client { static {  i = 100; } public static int i = 0; publ