Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
收集器方法参考Java8?_Java - Fatal编程技术网

收集器方法参考Java8?

收集器方法参考Java8?,java,Java,如果我有 void method(){ Collector<Item> collector = ... List<Item> toBeCollected = ... toBeCollected.forEach(item -> collector.collect(item)); } void方法(){ 收集器收集器=。。。 要收集的列表=。。。 toBeCollected.forEach(item->collector.collect(item))

如果我有

void method(){
   Collector<Item> collector = ...
   List<Item> toBeCollected = ...
   toBeCollected.forEach(item -> collector.collect(item));
}
void方法(){
收集器收集器=。。。
要收集的列表=。。。
toBeCollected.forEach(item->collector.collect(item));
}
我一直在这样做,但是IntelliJ Idea一直说可以用方法引用替换
collector.collect(item)
。考虑到
collector
是Lambda之外的一个参考,你知道我如何做到这一点吗


谢谢

IntelliJ最有可能建议使用:

toBeCollected.forEach(collector::collect);

您可以通过按“有问题的代码”以打开“操作”菜单来触发此代码重构。

它只是
collector::collect
。(你可以使用一个实例作为操作符的左边。)@chrylis,我也试过了,但是它说
void不是一个函数接口
Nevermind,谢谢@chrylis