多行.method()语法如何工作?

Jau*_*une 0 java

我很好奇Java如何读取类似以下代码的内容。

return arrayList.stream() 
    .mapToInt(Integer::intValue) 
    .toArray();
Run Code Online (Sandbox Code Playgroud)

来自https://www.geeksforgeeks.org/remove-an-element-at-specific-index-from-an-array-in-java/的代码

这是否等同于将所有内容放在同一行上,但更具可读性,还是每次返回下一行都会更改优先级,顺序或执行?

我期望前者,但我仍然在流和地图方面挣扎

(此外,您应该如何缩进?)

ruo*_*ola 6

多余的空格在Java中从来就不重要,您可以随时在任意位置放置尽可能多的换行符或空格,并且绝不会影响代码的执行。

所以这:

return arrayList.stream() 
    .mapToInt(Integer::intValue) 
    .toArray();
Run Code Online (Sandbox Code Playgroud)

等于这个:

return arrayList.stream().mapToInt(Integer::intValue).toArray();
Run Code Online (Sandbox Code Playgroud)

和这个:

return
         arrayList.       stream()   .    mapToInt(     Integer :: intValue) .
                            toArray    (     ) ;
Run Code Online (Sandbox Code Playgroud)