I would like to use local variables in lambda functions but I get error: Please see the 1. and 2. points in the code.
class Foo {
    int d = 0; // 1. It compiles, but ugly, 2. doesnt compile
    public void findMax(List<List<Route>> routeLists) {
        int d = 0; // 2.Error : Local variable dd defined in an enclosing scope must be final or effectively final
        routeLists.forEach(e-> {
            e.forEach(ee -> {
                d+=ee.getDistance();    
            });
        });
        ... doing some other operation with d
    }
}
How can I use them whitout setting them as global variables ?