判断方法(奇数):
错误判断方法:通过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为偶数
拓展:
今后在写代码时,如果用到取余符号%,要注意负数的情况。