2017-11-25 23 views
1
public boolean replaceEventAt(String eventStr, int position){ 
    boolean answer = false; 

    if((position > 0) && (position <= events.size())){ 
    events.get(position - 1) = eventStr; 
    answer = true; 
    } 

    return answer; 
} 

錯誤在第五行,其中的Java抱怨位置的值不是一個變量,請幫助的Java異常錯誤類型所需的變量中找到價值

+2

賦值('=')的左側必須是一個變量。也許你的意思是'events.set(position - 1,eventStr);'? –

+1

嗨,一個改善這個問題的建議,在你尋求編程幫助時,這個問題會很有幫助:總是複製完整的錯誤信息。它有很多信息,即使它對你沒有意義,回答你的問題的人可能會得到很多。 –

+0

是的,工作感謝你:) –

回答

0

的分配所謂的lvaluervalue之間運行。

lvalue代表左手邊值。

rvalue代表右手邊值。

右值可以是很多東西,如變量,常量,函數調用表達式等,但左側必須是可賦值的,所以它不能是常量或函數調用。

在你的情況,你的右值是一個函數調用;這將無法正常工作。編譯器錯誤消息正是這樣說的。

如果我們知道您正在嘗試做什麼,我們可能可以解釋更多,但從您發佈的代碼中不清楚您希望完成的任務。也許events是一些集合,要在position - 1位置的元素設置爲eventStr,在這種情況下,你可能會想events.set(position - 1, eventStr);

0

左側必須是一個變量(即我們應該能值賦給它)。但在你的情況下,它正在執行獲取操作所以它拋出一個錯誤

相關問題