14 ms·
Where did "e" get declared at? It just seems to leap magically into existence.
by iwince 12y ago
Where did "e" get declared at? It just seems to leap magically into existence.
- the8472 12y agoList<T>#forEach takes a Consumer<? super T> Consumer<U> has a single abstract method void accept(U u) The lambda effectively is an anonymous class implementing that interface / that single method. U resolves to ? super String. I.e. it expects a method that takes String or a superclass thereof as its first parameter. That's what e is. It all gets automatically pieced together at compile time via type inference.