Be concise.
Be useful.
All contributions dictatorially edited by webmasters to match personal tastes.
Please do not paste any copyright violating material.
Please try to avoid dependencies to third-party libraries and frameworks.
import static java.util.Arrays.stream;
import static java.util.stream.IntStream.iterate;
import java.util.Iterator;
import java.util.List;
record E<T>(int i, T value) {}
<T> List<E<T>> enumerate(T ... a) {
Iterator<T> g = stream(a).iterator();
return iterate(0, x -> g.hasNext(), i -> i + 1)
.mapToObj(i -> new E<>(i, g.next()))
.toList();
}
e = enumerate(a)
a = %w(abc xyz)
a.map.with_index{|v, i| [i, v] }