这里是一个解决方案
public static void main(String[]args)
{
Scanner keyboard = new Scanner(System.in);
try{
System.out.println("---EvenOdd---");
System.out.print("Enter a whole number: ");
int c = keyboard.nextInt();
evenOdd(c);
}finally{
keyboard.close();
}
}
public static void evenOdd(int num)
{
int c = num;
if ((c/2)*2 == c){
System.out.println("is even.");
}else {
System.out.println("is odd");
}
}
输出:
为输入值5
--- --- EVENODD
输入一个整数:5
是奇数
为输入值4
--- --- EVENODD
输入一个整数:4
是偶数。
续读
有几个问题与原来的代码,我将试图解释他们在网上订购。参考
原始代码:
public class EvenOdd {
public static void main(String[]args) {
Scanner keyboard = new Scanner (System.in);
System.out.print("---EvenOdd--- /n");
System.out.printf("Enter a whole number: ");
c = in.nextInt();
}
public static EvenOdd (int num) {
int c = num;
if (int.class)
(c/2)*2 = c;
System.out.println("is even.");
else (c)
System.out.println("is odd");
return EvenOdd;
}
}
首先我们这行
System.out.print("---EvenOdd--- /n");
使用这里的.print()
方法,虽然不违法是不必要的,因为Java的自动为我们提供了.println()
这创建一个新的行,所以我们不必。 (即具有“/ N”)
System.out.printf("Enter a whole number: ");
接着使用.printf()
方法,该打印格式的输出和接受参数作为参数。您没有使用此方法的任何专有功能,因此我们可以使用.print()
实现相同的功能。
c = in.nextInt();
变量in
并不在此范围内定义的,我假定你的意思是使用keyboard.nextInt()
。
public static EvenOdd (int num) {
当方法没有返回类型和相同的名称,因为它驻留在类(区分大小写)它是一个构造函数。构造函数通常不需要return
语句,而是通过语法new ObjectConstructor()
调用,以便为与构造函数相同类型的变量赋值。
if (int.class)
(c/2)*2 = c;
System.out.println("is even.");
else (c)
System.out.println("is odd");
这if-else
块显然是连java
语法。
首先没有必要将结果转换为int
,并且条件结尾的分号不属于。
消除这些错误给我们带来:
if (c/2)*2 = c
System.out.println("is even.");
else (c)
System.out.println("is odd");
现在我们需要来包装我们的条件括号内为(
和)
'而非使用赋值运算符“=
”我们应该用比较操作符'==
'返回boolean
。此外,else
子句不需要条件,如果您想使用条件查看elseif
。
这些变化让我们走到这一步。
if ((c/2)*2 == c)
System.out.println("is even.");
else
System.out.println("is odd");
现在我们添加适当的括号,我们很好去。
if ((c/2)*2 == c){
System.out.println("is even.");
}else{
System.out.println("is odd");
}
使用大括号。 'if'后面有两条语句。 – user2864740
我试过了,但它不断给我提供越来越多的错误 –
这根本不是合适的Java语法。 'if'后面的表达式应该是*'boolean' *,并且不应该在else之后有一个表达式(在括号中),只有一个语句。请参阅[官方教程](https://docs.oracle.com/javase/tutorial/java/nutsandbolts/if.html)。 – RealSkeptic