`
yuwei2008vip
  • 浏览: 38846 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

谜题1:奇数性

阅读更多
判断一个数是否是一个奇数?
public static boolean isOdd(int i)
{
	return i % 2 != 0;
}


如果你正在在一个性能临界(performance-critical)环境中使用isOdd 方法,
那么用位操作符AND(&)来替代取余操作符会显得更好:

public static boolean isOdd(int i)
{
	return (i & 1) != 0;
}


知识点:

%(模)操作符被定义为对于所有的 int 数值 a 和所有的非零 int 数值 b,都满足下面的恒等式:
(a / b) * b + (a % b) == a
换句话说,如果你用b 整除a,将商乘以b,然后加上余数,那么你就得到了最
初的值 a 。该恒等式具有正确的含义,但是当与 Java 的截尾整数整除操作符
相结合时,它就意味着:当取余操作返回一个非零的结果时,它与左操作数具有
相同的正负符号。例如
System.out.println(-4%-3);    // -1




分享到:
评论

相关推荐

    Java解惑(谜题)CHM中英文双版本

    谜题1:奇数性 谜题2:找零时刻 谜题3:长整除 谜题4:初级问题 谜题5:十六进制的趣事 谜题6:多重转型 谜题7:互换内容 谜题8:Dos Equis 谜题9:半斤 谜题10:八两 Java谜题2——字符谜题 谜题11:...

    Java谜题Java谜题1——表达式谜题

    谜题1:奇数性 谜题2:找零时刻 谜题3:长整除 谜题4:初级问题 谜题5:十六进制的趣事 谜题6:多重转型 谜题7:互换内容 谜题8:Dos Equis 谜题9:半斤 谜题10:八两 Java谜题2——字符谜题 谜题11:...

    Java Puzzlers 中文版(Java解惑)

    谜题 1:奇数性 下面的方法意图确定它那唯一的参数是否是一个奇数。这个方法能够正确运转 吗? public static boolean isOdd(int i){ return i % 2 == 1; } 奇数可以被定义为被 2 整除余数为 1 的整数。表达式 i % 2 ...

    iava解惑,深入剖析java

    谜题1:奇数性 此谜题可能涉及Java中的条件判断和模运算。在Java中,可以通过`%`操作符来获取两个数相除后的余数。如果一个整数除以2的余数为0,那么它就是偶数,否则为奇数。因此,判断一个整数`n`是否为奇数的代码...

    java 解惑.pdf

    **谜题1:奇数性** - **描述**:程序看似应该返回一个布尔值,表明一个数字是否为奇数,但结果却出乎意料。 - **解惑**:在进行模运算时,需要注意负数的情况。当输入为负数时,`%` 运算的结果可能会导致意外的行为...

    Java谜题解惑 中文版CHM格式

    谜题1:奇数性 下面的方法意图确定它那唯一的参数是否是一个奇数。这个方法能够正确运转吗? public static boolean isOdd(int i){ return i % 2 == 1; } 奇数可以被定义为被2整除余数为1的整数。表达式 i % 2 ...

    java谜题中文版

    #### 谜题1:奇数性的陷阱与修正 在探讨`java_puzzlers`中的第一个谜题时,我们遇到了一个看似简单却充满陷阱的场景。方法`isOdd`的目标是判断一个整数是否为奇数。原始实现如下: ```java public static boolean ...

    java解惑95个谜题.doc

    谜题1:奇数性 在这个问题中,我们有一个方法`isOdd(int i)`,它通过检查`i % 2`是否等于1来判断一个整数是否为奇数。然而,这个方法在处理负数时会出现问题,因为Java中的取余运算符 `%` 对于负数的处理方式可能...

    java解惑 书籍类 谜题

    **谜题1:奇数性** 本节讨论了一个看似简单的Java方法,旨在判断一个整数是否为奇数: ```java public static boolean isOdd(int i) { return i % 2 == 1; } ``` 此方法的逻辑基于数学定义,即如果一个整数除以2...

    java 谜题95

    #### 谜题1:奇数性 **题目解析** 在Java中,`%` 操作符用于计算一个整数除以另一个整数后的余数。根据题干中的代码片段: ```java public static boolean isOdd(int i) { return i % 2 == 1; } ``` 该方法的...

    JAVA解惑(JAVA谜题) 中文版(PDF)

    #### 谜题1:奇数性的判断 在《JAVA解惑》一书中,作者通过一系列实例介绍了Java编程语言中的一些不易掌握的知识点。其中一个例子是关于如何正确判断一个整数是否为奇数。 **原始代码分析** ```java public static ...

    java解惑

    #### 谜题1:奇数性检测中的陷阱 在《Java解惑》一书中,作者通过一系列的谜题探讨了Java语言中容易忽视但又至关重要的细节。第一个谜题是关于奇数性检测的,表面上看似简单的代码实际上隐藏着复杂的行为。 ```...

    Java解惑 PPT1

    **谜题1:奇数判断** 在Java中,判断一个整数是否为奇数,通常我们会使用`i % 2 == 1`。然而,`i % 2 != 0`或`(i & 1) != 0`也是可行的,后者甚至可能提供更好的性能。这里的关键是,使用`%`运算符时要考虑操作数的...

    JAVA面试谜题解惑.pdf

    #### 表达式谜题:奇数性检查方法的缺陷 **题目背景:** 题目中提到的谜题旨在检验面试者对Java中的基本数学运算符及其行为的理解程度。具体来说,是针对取余运算符`%`在处理整数时的行为特征进行考察。 **题目...

Global site tag (gtag.js) - Google Analytics