-1
我不断收到一个缺少return语句的错误,但我不知道在哪里。每次我按照代码,我都觉得至少有一个if语句提供了return语句。缺少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;
}
}
}
好吧,我想我明白你是什么意思。如果我在方法的末尾放置返回语句,那么这意味着最终的返回值是什么?当我在方法结束时返回null时,应用程序会发出错误,所以我不知道该返回什么。当我尝试一个else if语句后返回null时,我仍然得到缺少的返回语句错误。对不起,我对编程很陌生。 – user6036979
如果你的函数是为了“获得...”而返回的东西,那么你将返回函数的目的是“获取”。你的函数被称为“getUsersContaining”,所以你应该返回包含字符串的用户。 – Carcigenicate
发生错误是因为如果'this.capacity' == 0,nameSearch!= null,您的函数将不会返回任何内容,因为它永远不会进入循环。 – Carcigenicate