-4

我需要这样做,以便计算机确定某人输入的 int 是否是偶数。我将如何证明这一点?我把它除以二,但这不是布尔值,我也不知道如何用布尔值计算出来。我还需要一个单独的计数器来计算偶数吗?

import java.util.Scanner; 
public class evenNumber {
 public static void main(String[] args) {
 Scanner scan = new Scanner(System.in);
 int numberOne = 0; 
  for(int counter = 0; counter < 15; counter++)
   System.out.print("Enter a number: ");
   numberOne = scan.nextInt(); 
  if(numberOne/2  ){

  }
 }
}
4

5 回答 5

4

使用模运算符:

if (varName % 2 == 0) {
    //divisible by two
} else {
    //not
}
于 2013-07-24T03:09:07.900 回答
1

你可以这样做:

if( number % 2 == 0){
 //it is even
}

%返回除法的提示,如果没有余数(即为零),则该数字是可整除的。在这种情况下,如果它可以被 2 整除,则它是偶数。

于 2013-07-24T03:09:27.490 回答
0
if(number%2 == 0)
System.out.println("even");
else
System.out.println("odd");

"%" 为您提供除法后的余数,如 3%3 =0, 4%3=1, 5%3=2, 6%3=0

于 2013-07-24T05:39:18.283 回答
0

这可以通过%操作员轻松完成。尝试类似的东西

if(numberOne % 2 == 0)
    //Number is even
} else {
    //Number is odd
}

解释:

运算符得到该%值除以该值的余数。因此numberOne % 2,如果它可以除以 2,则返回 0,如果不能,则返回 1。

如果您想计算偶数,请声明一个变量int evenCount,并且每次if(numberOne % 2 == 0),只需执行evenCount++

于 2013-07-24T03:11:38.777 回答
-2

我会按位使用:

if ((number & 1) == 0) {
    // Even.
} else {
    // Odd.
}

这基本上是检查低位是否为零。

这比使用模运算符 ( %) 快得多。

于 2013-07-24T03:14:45.877 回答