2 long runing LONG_Runing 于 2016.04.13 10:30 提问

如何读懂下面这段代码?

长辈朋友们,你们好。这段代码是用来生成请求码的,但是关于请求码是什么样子我就不清楚了。因为我看不懂这段代码。所以希望看到这个问题的长辈朋友能够帮帮我。
代码如下:
protected int makeRequestCode(int requestCode) {
if ((requestCode & 0xffffff00) != 0) {
throw new IllegalArgumentException("Can only use lower 8 bits for requestCode");
}
return ((index + 1) << 8) + (requestCode & 0xff);
}

    注:这里的index是一个成员变量。无需关心。

2个回答

qq423399099
qq423399099   Ds   Rxr 2016.04.13 10:39

0xffffff00代表 1111 1111 1111 1111 1111 1111 0000 0000
让requestCode 和 0xffffff00进行逻辑与操作,可以得到之前的24个bit位(因为1和,0或者1相与还是1),
如果这个数字不是0,那么说明前面的24个bit位必然存在非0的位
此时执行throw new IllegalArgumentException("Can only use lower 8 bits for requestCode");

CSDNXIAOD
CSDNXIAOD   2016.04.13 14:32

如何读懂别人的代码
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
如何读懂一段代码
对于一段不知道背景知识的代码,如何读懂? 对于程序员来说,读代码要比写代码困难。因为写代码是在自己的世界创造,而读代码却是在接触别人的世界的建筑。每个人的世界都是不尽相同的,因此在读别人的代码时,总会有些滞涩,我也是更愿意自己写,读懂算法思想、梗概,然后自己来实现。因此在过去很长一段时间,写的代码都只是一时之快,很难长久——写完不久之后,我已经不认识自己曾经写的东西了,甚至觉得那是别人写的。
同一空间如果放多个asp.net网站,防止App_Code.dll冲突?
最近要测试一个网站,发现发布后的文件中也有App_Code.dll 致使和asp.net空间原有网站冲突, 解决来决绝去还是不行,最后没辙我是这么干的。 把所偶App code目录的类都单独拿出来,见一个Class项目,统一编译成一个dll,起名 XXX.dll, 然后用网站引用这个XXX.dll,然后就没有App_code.dll了,避免了冲突。 如今一个空间我放了四个网站项目,虽然只能
下面这段代码要循环延时输出0 1 2 3 4,输出结果是否正确,若不正确请修改,并理
for(var i=0;i {        setTimeout(function()        {               document.write(i + " ");        },100); } 以上代码输出:5,5,5,5,5 修改如下: for(vari=0;i {        (function(i){               setTi
C#笔试题(二)
一、问答题 61.下面这段代码输出什么?为什么? 答案注释: int i=5;  int j=5;  if (Object.ReferenceEquals(i,j))  Console.WriteLine("Equal");  else  Console.WriteLine("Not Equal");  不相等,因为比较的是对像 62.什么叫做SQL注入,如何防止?请举例说明。
编写一段代码,其功能是打印代码本身
编写一段代码,其功能是打印代码本身#includemain(){char *c="#include%cmain()%c{%cchar *c=%c%s%c;%cprintf(c,10,10,10,34,c,34,10,10);%c}";printf(c,10,10,10,34,c,34,10,10);}以上代码来自:编写一段代码,其功能是打印代码本身。该代码将自身编为单行的字符串然后打印,并使用AS
腾讯 2016 春招笔试(伪)权威解析
这篇文章的原文在:原文地址 1、应用程序开发过程中,下面哪些开发习惯可能导致安全漏洞? 在程序代码中打印日志输出敏感信息方便测试(√) 在使用数组前判断是否越界 在生成随机数前使用当前时间设置随机数种子(√) 设置配置文件权限为rw-rw-rw-(√) 只说一下第三个吧,给出篇文章随机数是骗人的 这篇文章中提到的另一篇文章我也给出链接,省去大家查找的时间当随机不够随机:一个在线扑克游戏...
C/C++经典题解析
以下题目都是来时何海涛博客的 C/C++/C#面试题精选 系列,感谢博主的整理。这些题不仅帮助我通过一些笔试,更重要的是帮助我很好的理解C/C++。以前很讨厌这些题,现在想来做些题还是很有用的,至少可以帮助你巩固知识加深理解。 为支持博主的原创,我附上文章的连接地址 点击打开链接。 在阅读中发现博主解释的还不够详细,为了能够更好的帮助网友,同时也帮助自己梳理一下知识,我重新整理了一下。
5-3 出租 (20分)
下面是新浪微博上曾经很火的一张图:一时间网上一片求救声,急问这个怎么破。其实这段代码很简单,index数组就是arr数组的下标,index[0]=2 对应 arr[2]=1,index[1]=0 对应 arr[0]=8,index[2]=3 对应 arr[3]=0,以此类推…… 很容易得到电话号码是18013820100。本题要求你编写一个程序,为任何一个电话号码生成这段代码 —— 事实上,只要生成
C/C++面试题精选
转载来自:http://blog.csdn.net/cadcisdhht/article/category/785138 总结: 1. static的作用是表示该函数只作用在类型的静态变量上,与类的实例没有关系;而const的作用是确保函数不能修改类的实例的状态,与类型的静态变量没有关系。因此不能同时用它们。 2. 空类实例不包含信息,本来求sizeof应该是0。但当我们声明该类型的实例的时
html-css-javascript题目集锦-1
> iframe可用在以下几个场景中: 1:典型系统结构,左侧是功能树,右侧就是一些常见的table或者表单之类的。为了每一个功能,单独分离出来,采用iframe。  2:ajax上传文件。  3:加载别的网站内容,例如google广告,网站流量分析。 4: 在上传图片时,不用flash实现无刷新。 5: 跨域访问的时候可以用到iframe,使用iframe请求不同域名