Closures/Value capture: Difference between revisions
Content added Content deleted
(added java) |
|||
Line 480: | Line 480: | ||
slist@.(?9) '' |
slist@.(?9) '' |
||
25</lang> |
25</lang> |
||
=={{header|Java}}== |
|||
{{works with|Java|8+}} |
|||
<lang java>import java.util.function.Supplier; |
|||
import java.util.ArrayList; |
|||
public class ValueCapture { |
|||
public static void main(String[] args) { |
|||
ArrayList<Supplier<Integer>> funcs = new ArrayList<>(); |
|||
for (int i = 0; i < 10; i++) { |
|||
int j = i; |
|||
funcs.add(() -> j * j); |
|||
} |
|||
Supplier<Integer> foo = funcs.get(3); |
|||
System.out.println(foo.get()); // prints "9" |
|||
} |
|||
}</lang> |
|||
=={{header|JavaScript}}== |
=={{header|JavaScript}}== |