You are wrong about it being stored in memory after the loop finishes, this is one of the things the compiler always does for you (if a variable is no longer used, it'll reuse that stack offset for other variables).

The downside is it'll be much harder to read which I also mentioned, but if bukkit staff really want it this way I have no issues though.