java 符号的意义_【Java基础】Java运算符含义是什么 - 收获啦

一、<< :左移运算符,num << 1>例如:

2 << 1>

2 << 2>

2 << 3>

二、>> :右移运算符,num >> 1,相当于num除以2例如:

16 >> 1 //8 移了一位 16/2

16 >> 2 //4 移了两位 16/2/2

16 >> 3 //2 移了三位 16/2/2/2

三、>>> :无符号右移,忽略符号位,高位都以0补齐,无符号右移运算符>>> 只是对32位和64位的值有意义例如:

1 >>> 1 //0001 → 0000 等于0

2 >>> 1 //0010 → 0001 等于1

3 >>> 1 //0011 → 0001 等于1

4 >>> 1 //0100 → 0010 等于2

4 >>> 2 //0100 → 0001 等于1

四、& :与运算,符号两边都为true,结果才是true,否则为false;对于数字,可将数字转换为2进制形式去理解,采用同位 与 操作即可得出结果。例如:

true&true=true

true&false=false

false&false=false

2&3=2 即:0010&0011=0010 (从高位到低位,依次做与操作)

五、| :或运算,符号两边只要有一个为true,则结果为true,否则为false;对于数字,可将数字转换为2进制形式去理解,采用同位 或 操作即可得出结果。例如:

true|true=true

true|false=true

false|true=true

false|false=false

2|3=3 即:0010|0011=0011 (从高位到低位,依次做或操作)

六、^ :异或运算,相同为0,不同为1;对于数字,可将数字转换为2进制形式去理解,采用同位 异或 操作即可得出结果。例如:

2^3=1,即0010^0011=0001

true^true=false

false^false=false

true^false=true

5^2=7 即:0101^0010=0111 (从高位到低位,依次做异或操作)

七、! :非运算例如:

!true=false

!false=true

八、布尔类型操作符:&=、|=、^=

咋一看不知道啥意思,如果你再看看 += 是不是就明白了呢。int num = 1;

num = num + 2 等同于 num += 2

同理:boolean flag = true;

flag = flag & false 等同于 flag &= false

flag = flag | false 等同于 flag |= false

flag = flag ^ false 等同于 flag ^= false

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值