第一次在这里发帖,我有这个问题:
编写一个名为mostBowlsFull的静态方法,将其添加到Bowl类中,该类传递一个Bowl对象数组,如果数组中的绝对多数Bowls不为空,则返回true。因此,如果数组包含11个碗而6个不是空的,则您的方法应返回true,但如果数组包含12个碗且6个(或更少)不为空,则您的方法应返回false。
我们在这里上课:
不确定它是否可访问,或者您是否必须登录该服务:/
无论如何,这是我的代码
`public static boolean mostBowlsFull(Bowl bowls[]){
int count = 0;
for(int j = 0; j < bowls[].length(), j++){
if(bowls[j].getEmpty == true){
count++;
}
}
if(count > (bowls[].length()/2)){
return true;
}
}`
我正在寻求反馈:
系统检测到编译错误。这可能是由于: 分号丢失;在声明的最后。 未闭合的牙套{}。 未闭合的括号()。 未终止的字符串文字&#34;&#34;。 方法签名无效。 缺少退货声明。 Redeclared变量或数据成员。 等
有任何明显的错误吗?
编辑:好的,经过审核后我有
public static boolean mostBowlsFull(Bowl bowls[]){
int count = 0;
for(int j = 0; j < bowls.length; j++){
if(bowls[j].getEmpty() == true){
count++;
}
}
if(count > (bowl.length/2)){
return true;
}
}
仍然收到相同的消息,虽然我明白了所指出的一切,谢谢。
答案 0 :(得分:1)
使用IDE并解决编译错误会更容易,更少时间。 我在for循环中看到两个错误:
for(int j = 0; j < bowls[].length(), j++){
使用逗号而不是分号。 for
循环语法是
for (initialization; termination; increment) {
statement(s)
}
length也是数组的属性,而不是方法。因此,请使用bowls.length
代替bowls[].length
。使用[]
时,并不是说您不需要length
。
答案 1 :(得分:1)
如果您尝试获取bowls
的长度,请使用bowls.length
,而不是bowls[].length()
。
此外,在for循环中,您需要在所有三个语句之间使用分号:
for(int j = 0; j < bowls.length; j++){ ... }
答案 2 :(得分:0)
public static boolean mostBowlsFull(Bowl bowls[]){
int count = 0;
boolean ret=false;
for(int j = 0; j < bowls.length; j++){
if(bowls[j].getEmpty() == false){
count++;
}
}
if(count > (bowls.length/2)){
ret=true;
}
return ret;
}