判断方法(奇数):
错误判断方法:通过a%2==1来判断。(原因:负奇数对2取余的结果为-1)
正确判断方法:(1) 通过a%2!=0来判断。
(2) 通过(a&1)==1来判断。(推荐使用,位操作,性能更优)
Java代码:
public class Test {
public static void main(String[] args) {
int[] a = { 0, 11, -11, 20, -20 };
System.out.println("————利用“a%2!=0”判断————");
for (int i : a) {
System.out.println(i + "为" + oddOrEven(i));
}
System.out.println("————利用“(a&1)==1”判断————");
for (int i : a) {
System.out.println(i + "为" + oddOrEven(i));
}
}
public static String oddOrEven(int a) {
if (a % 2 != 0) {
return "奇数";
} else {
return "偶数";
}
}
public String oddOrEven2(int a) {
if ((a & 1) == 1) {
return "奇数";
} else {
return "偶数";
}
}
}
————利用“a%2!=0”判断————
0为偶数
11为奇数-11为奇数
20为偶数-20为偶数
————利用“(a&1)==1”判断————
0为偶数
11为奇数-11为奇数
20为偶数-20为偶数
Test
拓展:
今后在写代码时,如果用到取余符号%,要注意负数的情况。