java中按位与和按位或的问题

System.out.println(5&9);将输出1,这是为什么System.out.println(5|9);将输出13,这又是为什么尽量详细一点... System.out.println( 5 & 9 );
将输出1,这是为什么
System.out.println( 5 | 9 );
将输出13,这又是为什么
尽量详细一点
展开
 我来答
yugi111
2017-07-17 · TA获得超过8.1万个赞
知道大有可为答主
回答量:5.1万
采纳率:70%
帮助的人:1.4亿
展开全部
按位与 &
按位或 |

转为二进制操作即可

&: 两位同时为“1”,结果才为“1”,否则为0
|: 参加运算的两个对象只要有一个为1,其值为1。

按位与:

5: 0000 0101
9: 0000 1001
1: 0000 0001

按位或:

5: 0000 0101
9: 0000 1001
13: 0000 1101
追问
按位或,5和9,与13有什么关系。我迷了
追答
0000 0101
=
2的0次方+2的2次方
=
5
-----------------------------

0000 1001
=
2的0次方+2的3次方
=
9
--------------------------------------

从右边开始是2的0次方乘以那个1或0
第饿死鬼
2017-07-17 · TA获得超过1.4万个赞
知道小有建树答主
回答量:9936
采纳率:17%
帮助的人:1308万
展开全部
subtle; natural philosophy deep ;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式