在流中使用过滤器

vny*_*ara 4 java java-8 java-stream

String[] arr={"121","4545","45456464"};
Arrays.stream(arr).filter(s->s.length()>4).toArray(String[]::new);
Run Code Online (Sandbox Code Playgroud)

有人能告诉我上面的代码片段到底发生了什么 toArray(String[]::new).

Rol*_*and 5

String[]::new实际上是一样的size -> new String[size].一种新的String[]与所述相同的尺寸施加所述后元件的数量创建filterStream.另见javadocStream.toArray