前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【每日小知识】 面试题:System.out.println(3|9)输出什么?

【每日小知识】 面试题:System.out.println(3|9)输出什么?

作者头像
Python进击者
发布2020-02-24 12:38:55
7440
发布2020-02-24 12:38:55
举报
文章被收录于专栏:JAVAandPython君JAVAandPython君

面试题:System.out.println(3|9)输出什么?

这个题是比较基础的面试题,来自美团面试。主要考察位运算符的知识。

考察知识点: &和&&;|和||

&和&&:

共同点: 两者都可做逻辑运算符。它们都表示运算符的两边都是true时,结果为true;

不同点: &也是位运算符。& 表示在运算时两边都会计算,然后再判断;&&表示先运算符号左边的东西,然后判断是 否为true,是true就继续运算右边的然后判断并输出,是false就停下来直接输出不会再运行后面的东西。

|和||:

共同点: 两者都可做逻辑运算符。它们都表示运算符的两边任意一边为true,结果为true,两边都不是true,结果就为false;

不同点: |也是位运算符。| 表示两边都会运算,然后再判断结果;|| 表示先运算符号左边的东西,然后判断是否为true,是true就停下来直接输出不会再运行后面的东西,是false就继续运算右边的然后判断并输出。

回到本题:

3 | 9=0011(二进制) | 1001(二进制)=1011(二进制)=11(十进制)

关于位或运算:

按位或运算符“|”是双目运算符。其功能是参与运算的两数各对应的二进位相或。只要对应的二个二进位有一个为1时,结果位就为1。参与运算的两个数均以补码出现。

例如 9|5:

代码语言:javascript
复制
 00001001
 |
 00000101
=00001101

(十进制为13)可见9|5=13

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-01-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python进击者 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档