缺少退货声明

时间:2016-03-09 00:23:24

标签: java return

我一直收到错误的退货声明错误,但我不知道在哪里。每次我遵循代码时,我都觉得至少有一个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;
       }
   }
}

1 个答案:

答案 0 :(得分:3)

声明返回类型的方法必须为该方法的每个可能的流分支声明一个return语句。这意味着你的方法中基本上可以有一个代码流,它不会在return语句中结束(提示:如果你的if语句每次在循环内返回false会发生什么?最后循环结束,什么都不会被退回。)

您可以在方法的底部放置一个catch-all return语句,例如返回null,或者甚至抛出Exception,这样您就不会返回任何内容& #34;