The Stream interface has two overloads for the method of()
. One of these is a variable-arity method while the other takes a single argument.
Is the single-argument method a performance optimization versus passing one argument to the variable-arity method? If so, how does it improve performance? The same questions could be asked of the empty()
method, which would seem to be syntax sugar around the variable-arity of()
.
I see that the implementation differs between these methods, with the difference apparently being how the Spliterator
is instantiated; but what advantage does this offer to the Stream
API?