You only “need” to mark local variables or parameters final when they are used inside an anonymous or local class.
It is probably a good code convention to mark them final to remind yourself they are not changed, but, Stephan is right; you can change local variables if you wish. Changing parameters might cause confusion, but that does not merit a rule.
Oh, sure, you could do that. Or you could eat some pie. While reading this tiny ad: