这是的问题
编写一个atCapacity(int people,int capacity(方法,该方法返回一个布尔值,用于确定体育场是否达到最大容量。如果至少80%的座位都卖光了,那么体育场就满了。
这是我尝试的代码
public class Scratchpad
{
atCapacity(int people, int capacity)
{
boolean atCapacity = false;
capacity = people * (80/100);
if(people > capacity)
{
return false;
}
else if(people <= capacity)
{
return true;
}
}
}
代码检查器说
"Grader.java:第4行:方法声明无效;返回类型"必需";
我不知道如何修复代码。我不是在问答案,我只是需要一个正确的方向。感谢
这应该是一个方法声明:
atCapacity(int people, int capacity)
但是方法声明的语法需要返回类型,如
SomeReturnType atCapacity(int people, int capacity)
如果我们查看返回true
和false
的方法的主体,那么正确的类型应该是true
和false
的类型,即<nudge>
我也可以看到一些其他错误(<nudges>
(:
编译器会告诉您,在方法的末尾需要一个
return
。(我们不会推断people > capacity
和people <= capacity
是互斥的。(解决这个难题的方法不止一种。
在运行时,
80/100
会让你感到悲伤;参见Int除法:为什么1/3==0的结果?。最重要的是,您有一个名为
atCapacity
的变量,它似乎不需要。
您可以编写
public boolean atCapacity() { ... }