谜题1:奇偶性
来源:互联网 发布:企业版域名注册通 编辑:程序博客网 时间:2024/06/07 20:21
以下为一个判断int类型变量是否为奇数的方法
public static boolean isOdd(int i) { return i % 2 == 1;}
存在的问题:当i为负奇数时,方法返回的结果错误。
对于java中的%运算符,满足以下等式:
(a / b) * b + (a % b) == a
也就是说,表达式 a%b结果的符号永远与a相同。因此当a为负奇数时,a%2的结果为-1。
解决办法:
- 改为
i%2 != 0
- 改为
(i&1) != 0
(如果不记得 &与 !=运算符的优先级,建议加上括号明确 )
阅读全文
0 0
- 谜题1:奇偶性
- 奇偶性
- 奇偶性
- 位运算之判断奇偶性&1
- 奇偶性剪枝
- 判断奇偶性
- 判断奇偶性
- 判断奇偶性
- 《Java解惑》系列——01表达式之谜——谜题01:奇偶性
- 二进制下异或运算与二进制数中1个数的奇偶性联系
- javascript 判断奇偶性
- POJ 1809 Regetni 奇偶性
- 组合数的奇偶性
- java解惑-奇偶性
- 计算整数的奇偶性
- Fibonacci数列的奇偶性
- 位运算判断奇偶性
- java解惑之奇偶性
- 机器学习笔记——逻辑回归模型及其代价函数推导
- POJ 2387 Til the Cows Come Home
- ES6学习笔记:迭代器与生成器
- 每日MySQL之008:MySQL权限简介
- 基于Windows安装配置Apache、Tomcat、IIS服务器,Apache、Tomcat、IIS服务器对比
- 谜题1:奇偶性
- CCF认证201403第三题(提交未通过)
- Java 并发专题 : Timer的缺陷 用ScheduledExecutorService替代
- 【安卓基础】06 SQLiteHelper 对安卓数据库操作
- ruby02
- bzoj 2160(manacher+差分)
- hdu 2081 手机短号
- java学习笔记:移位
- MT 102 Multiple Customer Credit Transfer多客户信用转账