A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© a609519303a 中级黑马   /  2015-8-14 17:03  /  543 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

看视频呢上说>>的结果是除以2的移动位数次幂,那么60>>应该是60/(2的4次方)=3.75  应该是3    但实际结果是4

8 个回复

倒序浏览
60>>怎么会有结果呢 如果是60>>4 得到的也是3 因为取整是吧小数部分直接去掉了
回复 使用道具 举报
本帖最后由 iamzk 于 2015-8-14 17:37 编辑

60 >> 4
由于60默认为int类型,所以他的计算结果也应为int类型。具体二进制计算过程如下:
二进制:111100 >> 4 = 11 = 3(十进制)
  1. /*
  2. Hello World演示代码。
  3. */
  4. class Demo
  5. {
  6.         public static void main(String[] args)
  7.         {
  8.                 System.out.println("60>>4=" + (60 >> 4));
  9.         }
  10. }
复制代码



QQ截图20150814173612.jpg (13.92 KB, 下载次数: 8)

QQ截图20150814173612.jpg
回复 使用道具 举报
楼上很详细~
回复 使用道具 举报
是这样的
回复 使用道具 举报
iamzk 发表于 2015-8-14 17:35
60 >> 4
由于60默认为int类型,所以他的计算结果也应为int类型。具体二进制计算过程如下:
二进制:111100  ...

清楚了。早上不知道怎么晕了,谢谢了
回复 使用道具 举报
iamzk 中级黑马 2015-8-14 21:28:17
7#
恩,你现在在自学吗?
回复 使用道具 举报
真神奇~。答解的很详细~长知识了
回复 使用道具 举报
四舍五入
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马