在Java Precisely 3rd Ed.中,有以下代码片段:
BiConsumer<Double[], Comparator<Double>> arraySorter = Arrays::<Double>sort;
Run Code Online (Sandbox Code Playgroud)
但是,我注意到即使我不在<Double>之后::,方法引用仍然有效(由于类型参数,这是有意义的BiConsumer).
不过,我很困惑,是否有何种情况下::<T>会需要在方法的参考,如果是这样,一个例子将是非常有益.
我正在尝试将具有嵌套struct类型(见下文)的DataFrame列扩展为多个列.我正在使用的Struct模式看起来像{"foo": 3, "bar": {"baz": 2}}.
理想情况下,我想将上面的内容扩展为两列("foo"和"bar.baz").然而,当我尝试使用.select("data.*")(其中data是结构柱),我只得到列foo和bar,其中bar仍然是一个struct.
有没有办法可以扩展两个图层的Struct?