2017-04-07 122 views
3

什么是下面的语句的意思是:如何通过参数Stream.map方法

String joined = elements.stream() 
    .map(Object::toString) 
    .collect(Collectors.joining(", ")); 

据我了解,Stream.map接受Function类型的参数。 我不明白如何传递Object::toString以及它如何工作?

谢谢。

+2

'Object :: toString'是方法引用 – developer

+3

它是元素 - > element.toString()'这里的简写 – user7

+4

https://docs.oracle.com/javase/tutorial/java/javaOO/methodreferences。 html –

回答

1

如何通过Object::toString以及它如何工作?

它被称为方法参考在你告诉给利用现有toString方法定义(自Object类)的map方法,而不是你显式调用obj -> obj.toString()map方法内。

我建议你看看here并了解Java8中的方法引用是如何工作的。