2016-09-25 132 views
-1

当我尝试运行我的主类时,出现错误,告诉我缺少以下代码的返回语句,但是我使用了返回语句。我对Java很陌生,所以很好解释。使用for和if语句

public boolean addPassenger(Person a){ 
     for(int i =0; i < passengers.length; i++){ 
     if(passengers[i]==null){ 
      passengers[i]=a; 
      NumOfPassengers++; 
      return true; 
     } 
     else 
      return false; 
     } 

    } 
+0

为什么使用循环呢?只要做'if(passengers.length> 0 && passengers [0] == null){... return true;} else {return false;} – fabian

+0

如果它是空的,我想将输入a插入到array @fabian – FredPeter

+0

然而,这不是你的代码所要做的,因为在第一次迭代中有一个'return'语句,可以防止任何其他迭代运行。 – fabian

回答

0

你需要有通过代码每一个可能的有效路径return声明。在你的情况下,你错过了一个return case语句,其中passengers.length == 0