JAVA中的一些运算符的基本用法

一、逻辑运算符

逻辑运算符一般用于连接boolean类型的表达式或者值
1、&(并且)
例:在表示一个数大于3小于5时:
x>3&x<5
2、|(或者)
例:表示一个数大于3或者小于3时:
x>3|x<3
3、!(非)
例:表示一个数不等于零时:
x!=0
4、^(异或)
相同为false,不同为true
5、&&(短路与)
&&和&逻辑运算结果相同,但是&&效率更高
例如:

int x=1,b=0;
		if(x<0&&x<b++){
			System.out.println(x);
		}
		System.out.println(b);
}
输出:0

可以看出,当x<0判断为false后,不再判断x<b++
6、||(短路或)
||和|逻辑运算结果相同,但是||效率更高
例:

int x=1,b=0;
		if(x>0||x<b++){
			System.out.println(x);
		}
		System.out.println(b);
}
输出:0

可以看出,当x>0判断为true后,不再判断x<b++

二、位运算符

位运算是直接对二进制补码进行运算
1、&(与)
规则:有零则零
例:1&3=1
1的补码[00000001]
3的补码[00000011]
结果为 [00000001]
2、|(或)
规则:有1则1
例:1|3=3
1的补码[00000001]
3的补码[00000011]
结果为 [00000011]
3、^(异或)
规则:相同则0,不同则1
例:1^3=2
1的补码[00000001]
3的补码[00000011]
结果为 [00000010]
4、~(按位取反)
规则:0变1 1变0
例:~3=-4
3的补码[00000011]
结果为 [11111100]
原码   [10000100]
换位十进制为-4
5、<<(左移)
规则:空位补0,被移除的高位丢弃。
例:
若b=3,则b<<1=6;
b [0000 0011]
左移一位:[0000 0110]此时为6
6、>>(右移)
规则:被移位的二进制最高位是0,右移后,空缺位补0;最高位是1,高位补1
例:
若b=3,则b>>1=1;
b [0000 0011]
左移一位:[0000 0001]此时为6
7、>>>(无符号右移)
规则:被移位的二进制最高位是0,右移后,空缺位补0;最高位是1,高位补1

三、三元运算符

三元运算符的格式:
(关系表达式) ? 表达式1 : 表达式2;
执行流程:
计算关系表达式里的值,如果为true,则执行表达式1,若为false,则执行表达式2。
例:

int a = (2>1)? 5:10;

结果为 a = 5

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值