2016-09-25 172 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