Java 8 lambdas, Function.identity() 或 t->t
我有一个关于该方法用法的问题。Function.identity()
想象一下下面的代码:
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.
有什么理由你应该使用而不是(反之亦然)。我认为第二个选项更具可读性(当然是品味问题)。但是,有什么“真正”的理由为什么应该首选一个人吗?Function.identity()
str->str