专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > J2SE

if (number&1 == 0) number为int型,这句编译有错,如何改

发布时间:2010-06-05 05:26:32 文章来源:www.iduyao.cn 采编人员:星星草
if (number&1 == 0) number为int型,这句编译有错,怎么改?在线等
rt

------解决方案--------------------
探讨
(number & 1) == 0

------解决方案--------------------
int number = 0 ;
if((number&1)==0){

}


楼上说的很对 。+++++++1
------解决方案--------------------
== 的优先级比前面&高,所以如果不加括号会先计算后面的==,
这样就相当于让number与一个boolean类型的量做按位与操作了,所以会报错
------解决方案--------------------
这么好的判断奇偶的算法,落在楼主的手里。
让我感觉貌似1级小号拿着神器,却不知道咋用。
------解决方案--------------------
优先级问题。。。
------解决方案--------------------
优先级问题,加上括号就ok
 如:
int number=5 ;
if((number&1)==0){

}

------解决方案--------------------
(number & 1) == 0
------解决方案--------------------
探讨

这么好的判断奇偶的算法,落在楼主的手里。
让我感觉貌似1级小号拿着神器,却不知道咋用。

------解决方案--------------------
随手加括号是个好习惯
------解决方案--------------------
探讨

(number & 1) == 0

------解决方案--------------------
(number & 1) == 0
------解决方案--------------------
学习了
------解决方案--------------------
括号是必须滴啊
------解决方案--------------------
学习学习
------解决方案--------------------
学习了,但是我对这个&运算符不太懂唉

------解决方案--------------------
& 是位运算中的 与运算(二目运算符),就是在将两个数转换成二进制数,相应位进行与运算,得出的数就是结果。

本例中 (number & 1),因为常量1只有一位是1,其他位全是0,所以最后的结果只能为0或1(根据number变量最后一位的值决定)
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: