1.位运算符 << 和 >>

位运算是直接对整型数据的二进制进行运算。

/*结论:1.位运算符操作的都是整型的数据2.   << : 在一定范围内,每向左移 1 位,就相当于 * 2;>> :  在一定范围内,每向右移 1 位,就相当于 / 2;面试题:最高效的计算 2 * 8?2 << 3 / 8 << 1
*/
class  BitTest{public static void main(String[] args) {int a = 21;// System.out.println("a << 2 = " + a << 2); 编译失败:String类型的数据无法使用 <<// 为什么编译失败呢?// 是因为" a << 2 = " 后面使用 + 号 拼接,所以,系统无法使字符串类型的数据进行 << System.out.println("a << 2 = " + (a << 2));   // 21 * 2^2 --> 21 * 4 = 84System.out.println("a << 3 = " + (a << 3));  // 168}
}

上述结论说特别说明了 << 和 >> 是在一定的范围内进行,如果超出范围,奇迹就发生了!

/*结论:1.位运算符操作的都是整型的数据2.   << : 在一定范围内,每向左移 1 位,就相当于 * 2;>> :  在一定范围内,每向右移 1 位,就相当于 / 2;面试题:最高效的计算 2 * 8?2 << 3 / 8 << 1
*/
class  BitTest{public static void main(String[] args) {int a = 21;// System.out.println("a << 2 = " + a << 2); 编译失败:String类型的数据无法使用 <<// 为什么编译失败呢?// 是因为" a << 2 = " 后面使用 + 号 拼接,所以,系统无法使字符串类型的数据进行 << System.out.println("a << 2 = " + (a << 2));   // 21 * 2^2 --> 21 * 4 = 84System.out.println("a << 3 = " + (a << 3));  // 168System.out.println("a << 27 = " + (a << 27)); // -1476395008}
}

注意上述代码: 21 << 27 位之后,结果为负数。
用图解释:

左移 (<<) / 右移 (>>)注意细节相关推荐

  1. c语言左移15位,关于c语言中左移右移运算符的问题

    参照<c与指针>,在c语言中左移时,不论算术左移还是逻辑左移效果都是相同的.而且对于有符号和无符号类型执行相同的操作,即按照二进制位向左左移N位.例如: 1 clude 2 intmain ...

  2. python左移右移位运算_Python这些位运算的妙用,绝对让你大开眼界

    位运算的性能大家想必是清楚的,效率绝对高.相信爱好源码的同学,在学习阅读源码的过程中会发现不少源码使用了位运算.但是为啥在实际编程过程中应用少呢?想必最大的原因,是较为难懂.不过,在面试的过程中,在手 ...

  3. java中的 31 和左移右移的关系简述

    java中的 31 和左移右移的关系简述 任何数乘以31 等于 这个数左移 五位 减去这个数 ​ n * 31 == (n << 5) - n " << " ...

  4. 一维数组反转c语言_C语言实现数组的循环左移,右移,翻转的示例

    数组结合指针可以实现很多有趣的功能,比如下面这个程序: 假设数组为 : 12345 如果左移一次即为:23451 ,依次类推 如果右移一次即为:51234 ,依次类推 翻转则为:54321 我们来实现 ...

  5. 左移右移位运算_计算机硬件技术基础M2——计算机运算基础(二)

    在上一篇中,我们学习到了计算机底层的一些机器码,以及一些行业标准,这一章,我们将接着学习机器码的一些比较与相关计算. 一.浮点数表示和定点数的比较 ① 当字长相同时,浮点数表示的范围要大得多. ②浮点 ...

  6. 位运算之左移右移运算之详解

    先看如下一段左移右移的代码及其结果: 代码 #include "stdio.h" char leftshift(char i, int n) { if(n < 0) retu ...

  7. EASYUI- EASYUI左移右移 GRID中值

    EASYUI左移右移 GRID中值 $("#addAll").click(function(){var ids = [];var names = [];var srcrows = ...

  8. 图片放大缩小旋转左移右移镜像倒影android

    图片放大缩小旋转左移右移镜像倒影 demo: TestImage 1. 将 meinv.jpg 图片拷贝到以下目录TestImage\app\src\main\res\mipmap-hdpi 1.An ...

  9. jQuery实现左移右移

    1 <html> 2 <head> 3 <meta charset="utf-8"> 4 <title>完成左移右移</tit ...

  10. java中左移运算符解释_java左移右移运算符

    位运算(只对byte.short.char.int.long有效) 左移和右移运算相当于实现整数乘以或除以2的n次方 2.7三元运算符表达式1的结果为true时,就为第二个表达式,如果为...... ...

最新文章

  1. do一下来了一个redux
  2. 第十五届全国大学生智能车全国总决赛获奖信息-浙江赛区
  3. 设置SAP登录后的背景图片(很有意思)
  4. 《系统集成项目管理工程师》必背100个知识点-48质量控制的老七工具和新七工具...
  5. Burpsuite在Firefox中无法抓取DVWA本地数据包解决方案+导入证书
  6. python3.5安装pygame_python怎么安装pygame
  7. Win32高级语法 条件测试语句与分支语句
  8. Leetcode算法题(C语言)17--验证回文字符串
  9. js判断时间是早上还是下午_测血糖别在下午,测空腹血糖早上几点最准确?
  10. From Apprentice To Artisan 翻译 08
  11. k8s学习笔记-Docker篇
  12. 面试过程中,竟然遇到PUA,我不得不服这种“潜规则”~
  13. Flex Builder 破解和注册方法
  14. 结构体习题:有5个职工,每个职工的数据包括:职工号、姓名、工资,编写程序要求从键盘上输入职工们的数据,输出高于平均工资的职工信息及高于平均工资的职工人数。——[C语言]入门基础编程 1092
  15. cv2库中一些函数的使用
  16. Photoshop技能167个经典的Photoshop技巧大全
  17. Canonical 在 Linux 上提供 Flutter 桌面应用支持
  18. 从虎胆龙威4(live free or die hard)说黑客攻击
  19. 电脑麦克风可以录音但总有沙沙的声音如何解决
  20. 荣联科技集团获“2022中国数字生态最具号召力奖”

热门文章

  1. python 2 入门
  2. iOS Swift RxSwift 的使用(二)
  3. three、vue中使用three、three怎么加载obj模型和mtl文件、three自定义800*800大小怎么拾取/点击
  4. python中uuid用法详解
  5. 微博指定日期舆情数据爬虫获取—基于中文金融词典(python)
  6. 银联IC卡读卡流程详解--读卡器与卡交互指令
  7. pdf2htmlEX 安装与保持最新版本
  8. 架构:安全架构——信息过滤与反垃圾、风险控制。
  9. 得之坦然,失之淡然顺其自然,争其必然,真是太经典
  10. (转)程序员成功之路 ——The road ahead for programmer(演讲稿)