我正在寻找一种方法将制表符分隔的String映射到数组。目前,我正在使用lambda表达式:
stream.map(line -> line.split("\t"));
有没有办法用方法参考来做?我知道stream.map(String::split("\t"))
不起作用,但我想知道是否有替代方案。
答案 0 :(得分:7)
您可以这样做:
static<T,U,R> Function<T,R> curry(BiFunction<? super T, ? super U, ? extends R> f, U u) {
return t -> f.apply(t, u);
}
然后你就能做到:
stream.map(curry(String::split, "\t"));