我有一個for菜單添加menuItems for循環。添加每個菜單項後,我想添加一個actionlistener,所以當在菜單中單擊時,它會從數組中加載相應的索引項。問題是java不允許我從匿名動作監聽器類中調用arraylist.get(i),因爲它必須是最終的。我不能讓我最終,因爲它在每次迭代增加。任何人都可以幫忙嗎?歡呼聲Java - 訪問For循環計數器從內部匿名類
2
A
回答
3
爲什麼不提取元素作爲匿名類之外的final
引用?
for (int i = 0: i < list.size(); i++) {
final elem = list.get(i);
// now use it...
}
注意這是更安全的原因之一。在原來的解決方案中,您將回到列表中,並且可能會發生更改,以便您的匿名類可以在每個回調中提取不同的對象。在這個變體中,它給出了對實際實例的引用final
。
0
您可以將您的ActionListener實現爲公共類,並在其構造函數中傳遞所需的菜單項。
相關問題
- 1. 從Java匿名內部類
- 2. 循環訪問Perl內部的匿名數組
- 3. 匿名監聽器內部的循環
- 4. Java內部for循環
- 5. JAVA-如何從for循環訪問FOR循環中的變量
- 6. Python如何製作計數器循環訪問For循環內的字典?
- 7. 訪問「這個」從Java匿名類
- 8. 訪問從匿名類在Java中
- 9. 匿名內部類成員在java中不可訪問
- 10. 從內部匿名類
- 11. for循環內的遞增計數器
- 12. 訪問$(本)從匿名jQuery函數內
- 13. 匿名內部類的訪問類型是什麼?
- 14. Tkinter for循環計數器
- 15. 全局數組值不能內部訪問的for循環
- 16. 在內部訪問PHP數組for循環
- 17. 匿名內部類
- 18. Java,For循環類
- 19. 訪問可變外部for循環
- 20. 如何從外部類訪問匿名內部類的變量的值?
- 21. 用Java流替換內部for循環
- 22. 接口類型的匿名內部類訪問'overrided'字段
- 23. Java中的公共匿名內部類
- 24. Java - 匿名內部類生命週期
- 25. 如何從for循環中的匿名函數獲取當前循環迭代?
- 26. SAS宏內部的計數器/循環
- 27. xsl:for-each循環內部的計數器
- 28. 從內部匿名運行訪問外部變量Runnable
- 29. 從匿名函數內訪問類範圍
- 30. JMeter:如何訪問ForEach控制器內的循環計數器?
非常感謝Thankyou,我被困在這一段時間 –