juan_gandhi: (Default)
https://groups.google.com/forum/?fromgroups=#!topic/scala-user/nC263xUiaQo

The same dumb stupid Java where you can only pass a final into an internal class...

"
List<Integer> ints = new ArrayList<>(); 
ints.add(1); 
ints.add(2); 
ints.add(3); 

int sum = 0; 
ints.forEach(i -> {sum += i;}); 

The compiler error is: "value used in lambda expression should be effectively final". I got some bad suspicion and tried whether this compiles:
int sumArray[] = new int[] { 0 }; 
ints.forEach(i -> {sumArray[0] += i;}); 

This did compile.
"

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

May 2025

S M T W T F S
    1 2 3
456 7 8 9 10
11 121314151617
18192021222324
25262728293031

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 15th, 2025 05:03 pm
Powered by Dreamwidth Studios