我似乎无法弄清楚为什么我的代码会以我看到的方式运行。我想念的是什么?
import java.util.Scanner;
class EvenOdd {
public static boolean isEven(int number) {
if(number %2 == 0){
System.out.println("Given number is even.");
return true;
}
else {
System.out.println("Given number is odd.");
}
return false;
}
public static void main(String[] args) {
int number = 0;
Scanner scanner =new Scanner(System.in);
System.out.println("Enter any number Even or ODD");
number = scanner.nextInt();
}
}
我希望看到的是偶数还是奇数取决于用户输入的数字?
答案 0 :(得分:4)
Java启动。 Java运行您的main方法。 Java创建了一个名为number
的新变量。其值为0。制作新的扫描仪。文本“输入任意数字,即偶数或奇数”被打印。从键盘上检索一个数字。
然后程序结束。
是的,您的代码具有isEven
方法,但没有任何调用方法。您实际上必须在主体中实际调用isEven
方法,例如:
isEven(number);
作为主要方法的最后一行。
答案 1 :(得分:1)
您从未运行过isEven(int)
方法。尝试通过编写isEven(int)
在主类中调用该方法。
答案 2 :(得分:-1)
您错过了主方法
中对isEven
方法的调用
import java.util.InputMismatchException;
import java.util.Scanner;
class EvenOdd {
public static boolean isEven(int number) {
if (number % 2 == 0) {
System.out.println("Given number is even.");
return true;
} else {
System.out.println("Given number is odd.");
}
return false;
}
public static void main(String[] args) {
try {
int number = 0;
Scanner scanner = new Scanner(System.in);
System.out.println("Enter any number Even or ODD");
number = scanner.nextInt();
boolean isEven = isEven(number);
System.out.println(isEven);
} catch (InputMismatchException e) {
System.out.println("Handle Exception " + e.getMessage());
}
}
}
如果输入的数字不是数字,则处理异常。