Variable used in lambda expression should be final or effectively final lambda表達式中使用的變量應該是final或有效的final
https://blog.csdn.net/qq_43227967/article/details/90511084
目錄
一、錯誤原文:
Variable used in lambda expression should be final or effectively final
二、錯誤譯文:
lambda表達式中使用的變量應該是final或有效的final
三、錯誤來源:
3.1、Lambda內外部使用變量異常
注意:雖然此處是Lambda表達式使用變量應該是final,但其實在線程中也會出現該問題 。
3.2、線程內外部使用變量異常
注意看這邊其實線程與Lambda只是一個簡寫一個原型罷了。
四、解決方案
定義一個變量value,等於i,然后給線程內部去使用,在jdk1.8是能夠識別的,不會拋出異常,但是如果在下方寫value++程序則會繼續拋出警告
使用value++后程序拋出異常