此题比较简单,但平时不注意说不定很多人都写过这样的代码
试用以下代码判断一int型整数是否为奇数
初看之下没有任何错误,但参数值为i为负数时,返回的却的是0或-1
以下为修改后的代码
或
或
试用以下代码判断一int型整数是否为奇数
public static boolean isOdd(int i){
return i%2==1;//1
}
初看之下没有任何错误,但参数值为i为负数时,返回的却的是0或-1
以下为修改后的代码
public static boolean isOdd(int i){
return i%2!=0;//1
}
或
public static boolean isOdd(int i){
return i&1!=0;//1
}
或
public static boolean isOdd(int i){
return Math.abs(i%2)==1;//1
}
本文探讨了在Java中判断整数是否为奇数时的一个常见陷阱:当使用模运算时,若输入为负数则可能导致误判。文章提供了几种修正方案,并分析了每种方法的适用场景。
2万+

被折叠的 条评论
为什么被折叠?



