I have a question regarding the usage of the Function.identity()
method.
Imagine the following code:
Arrays.asList("a", "b", "c")
.stream()
.map(Function.identity()) // <- This,
.map(str -> str) // <- is the same as this.
.collect(Collectors.toMap(
Function.identity(), // <-- And this,
str -> str)); // <-- is the same as this.
Is there any reason why you should use Function.identity()
instead of str->str
(or vice versa). I think that the second option is more readable (a matter of taste of course). But, is there any “real” reason why one should be preferred?