【发布时间】:2016-06-23 04:24:31
【问题描述】:
我不断收到缺少返回语句的错误,但我不知道在哪里。每次看代码,感觉至少有一个if语句提供了return语句。
代码:
public User[] getUsersContaining(String query) {
User[]nameSearch = new User[this.capacity];
if(nameSearch == null)
return null;
for (int i=0; i<this.capacity; i++){
if(this.array[i].getName().contains(query)){
nameSearch[i]=this.array[i];
bubbleSort date2 = new bubbleSort();
date2.bubblesort(nameSearch);
return nameSearch;
}
}
}
【问题讨论】:
-
好的,我想我明白你的意思了。如果我在方法的末尾放置一个 return 语句,这是否意味着这将是最终的返回值?当我在方法结束时返回 null 时,应用程序会给出一个错误,所以我不知道要返回什么。当我在 if 语句之后尝试 else return null 时,我仍然得到缺少的 return 语句错误。抱歉,我对编程很陌生。
-
如果你的函数是为了
get...某事,你返回函数是为了“得到”的东西。您的函数称为“getUsersContaining”,因此您应该返回包含该字符串的用户。 -
发生错误是因为如果
this.capacity== 0,并且nameSearch != null,您的函数将不会返回任何内容,因为它永远不会进入循环。