写一个java方法,判断给定的数字是偶数还是奇数。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了写一个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是奇数。
参考技术A public class Testpublic 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 + "是奇数");
参考技术B 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 + "是奇数!");
参考技术C boolean function(int n)
if (n%2 == 1)
return true; // 奇数返回true
else
return false; //偶数返回false
参考技术D public static boolean isEven(int num)//判断是偶数 是返回true
return num%2==0?true:false;
java怎么用位移判断一个数字时奇数还是偶数
public class Testpublic static void main(String[] args)
for (int i = 0; i <= 10; i++)
System.out.println(i + (isEvenNumber(i) ? "是偶数" : "是奇数"));
private static boolean isEvenNumber(int n)
return (((n >> 1) << 1) == n);
参考技术A int t ;
if(t&1==0)//则为偶数
以上是关于写一个java方法,判断给定的数字是偶数还是奇数。的主要内容,如果未能解决你的问题,请参考以下文章