2015-11-04 41 views
-5

我正在研究Java中的成績冊程序,並遇到「無法訪問的代碼」問題如果有人可以告訴我是什麼原因導致此問題,我將不勝感激。在Java中無法訪問的代碼錯誤

 static ArrayList<String> assignments = new ArrayList<String>(); 
    static ArrayList<String> grades = new ArrayList<String>(); 

    public static String getAssignment(int a){ 
     return assignments.get(a); 
     return grades.get(a); 
    } 

它給我返回grades.get(a)上的錯誤「無法訪問的代碼」;

+1

不能有兩個return語句順序。 – rajuGT

+1

'return'結束函數並給出你返回的值。你不能有2個,因爲你只能返回1個_value_。您可以返回數組,並且在某些語言中,元組 – Arc676

+2

您正在返回兩個對象,因此第二個無法訪問 –

回答

6

你有兩個return語句,所以第二個語句永遠不會到達。

也許你打算添加一個條件來決定應該執行哪兩個return語句。

根據您的方法的名稱,它應該返回的任務,不是一個檔次:

public static String getAssignment(int a){ 
    return assignments.get(a); 
} 

但是,這取決於你的邏輯。

+0

我不能同時執行2個返回語句嗎?他們是平行數組列表,所以我能做些什麼才能使它工作? –

+0

@GeorgeGuffey一個方法只能返回一個值。你期望你的方法返回什麼? – Eran

+2

@GeorgeGuffey:定義「讓它工作」。你究竟在做什麼*做*?第一個'return'語句是「獲得任務」。根據方法的名稱,這聽起來像合理的行爲。爲什麼第二個'return'語句在那裏? – David

-1

我想通了。不知道你一次只能在方法中返回1件東西