如何用Java编写一个函数来判断一个数是否为偶数?
发布时间:2023-09-08 01:26:12
判断一个数是否为偶数是判断该数是否能被2整除,即判断余数是否为0。可以使用取余运算符%来判断余数。
以下是使用Java编写的判断一个数是否为偶数的函数:
public class Main {
public static void main(String[] args) {
int num = 10;
if (isEven(num)) {
System.out.println(num + "是偶数");
} else {
System.out.println(num + "不是偶数");
}
}
public static boolean isEven(int num) {
// 使用取余运算符%判断余数是否为0
if (num % 2 == 0) {
return true; // 余数为0,返回true,代表是偶数
} else {
return false; // 余数不为0,返回false,代表不是偶数
}
}
}
以上代码定义了一个isEven函数,该函数的输入参数是一个整数num,返回值是一个布尔值,true代表num是偶数,false代表num不是偶数。在main函数中,调用isEven函数判断是否为偶数,并输出结果。
使用%运算符取余数时,如果余数为0,表示被除数能整除除数,即该数为偶数;如果余数不为0,表示被除数不能整除除数,即该数不是偶数。
例如,上述代码运行结果为:
10是偶数
这是因为10除以2的余数为0,所以10是一个偶数。
需要注意的是,判断一个数是否为偶数还可以使用位与运算符&来实现,这种方法更高效。可以将待判断的数与1进行位与运算,如果结果为0,则表示该数为偶数。具体代码如下:
public class Main {
public static void main(String[] args) {
int num = 10;
if (isEven(num)) {
System.out.println(num + "是偶数");
} else {
System.out.println(num + "不是偶数");
}
}
public static boolean isEven(int num) {
// 使用位与运算符&判断最低位是否为0
if ((num & 1) == 0) {
return true; // 最低位为0,返回true,代表是偶数
} else {
return false; // 最低位不为0,返回false,代表不是偶数
}
}
}
以上代码使用位与运算符&判断待判断的数的最低位是否为0,若为0,则代表该数为偶数。
无论是使用取余运算符%还是使用位与运算符&判断一个数是否为偶数,都可以有效判断一个数是否为偶数。
