写一个java方法,判断给定的数字是偶数还是奇数。
展开全部
奇偶数的判定依据是:是否能被2整除。
1、通过字面解释去实现:采用取模(%)的做法:
public booleam isOdd(int num){
return num % 2 != 0;
}
注意:通过取模判断奇偶数一定要与0进行比较。如果是通过与1进行比较的话会有一个问题:
0 % 2 = 0 ( 0 != 1 ) 是偶数
1 % 2 = 1 ( 1 = 1 ) 是奇数
-1 % 2 = -1 ( -1 != 1 ) 是偶数,很明显是错的
2、利用位运算(&)能更好的实现
原理是:偶数的二进制末位必然是0,奇数的末尾必然是1。所以只要把一个数与1进行按与运算,运算结果为1则是奇数,0则为偶数。
public booleam isOdd(int num){
return num & 1 == 1;
}
这种方法不用担心-1这个特殊情况,(在计算机中,负数以其正值的补码形式表达的):
-1 的二进制:
原码:0000 0001
反码:1111 1110
补码:1111 1111
按位与计算得到:0000 0001,结果是1,则可以判断为-1是奇数。
展开全部
public class Test {
public static void main(String[] args) {
judgeNum(2);
judgeNum(3);
}
/**
* 判断是奇数还是偶数的方法
* @param num
*/
public static void judgeNum(int num) {
if(num % 2 == 0) {
System.out.println(num + "是偶数");
} else {
System.out.println(num + "是奇数");
}
}
}
public static void main(String[] args) {
judgeNum(2);
judgeNum(3);
}
/**
* 判断是奇数还是偶数的方法
* @param num
*/
public static void judgeNum(int num) {
if(num % 2 == 0) {
System.out.println(num + "是偶数");
} else {
System.out.println(num + "是奇数");
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("请输入您要判断的数:");
int N = input.nextInt();
if (N%2==0) {
System.out.println(N + "是偶数!");
} else {
System.out.println(N + "是奇数!");
}
}
Scanner input = new Scanner(System.in);
System.out.print("请输入您要判断的数:");
int N = input.nextInt();
if (N%2==0) {
System.out.println(N + "是偶数!");
} else {
System.out.println(N + "是奇数!");
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
boolean function(int n)
{
if (n%2 == 1)
return true; // 奇数返回true
else
return false; //偶数返回false
}
{
if (n%2 == 1)
return true; // 奇数返回true
else
return false; //偶数返回false
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public static boolean isEven(int num){//判断是偶数 是返回true
return num%2==0?true:false;
}
return num%2==0?true:false;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询