Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.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/2/ionic-framework/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
外部类中带有静态函数的Java 8映射_Java - Fatal编程技术网

外部类中带有静态函数的Java 8映射

外部类中带有静态函数的Java 8映射,java,Java,我在一个Utils类中有一个静态函数,它将Bean1映射到Bean2 public class Utils { public static Bean2 bean1ToBean2(Bean1 bean1) { Bean2 bean2 = new Bean2(...); return bean2; } } 现在我需要使用它,但语法有问题: beans2 = beans1.stream().map(this::Utils.bean1ToBean2).co

我在一个
Utils
类中有一个静态函数,它将Bean1映射到Bean2

public class Utils {

   public static Bean2 bean1ToBean2(Bean1 bean1) {
      Bean2 bean2 = new Bean2(...);
      return bean2;    
   }
}
现在我需要使用它,但语法有问题:

beans2 = beans1.stream().map(this::Utils.bean1ToBean2).collect(Collectors.toList());
有个语法错误

The target type of this expression must be a functional interface.
为什么不呢

 map(Utils::bean1ToBean2)
或者,如果您在同一个班级,只需:

map(this::bean1ToBean2)

this::Utils.bean1ToBean2
更改为
Utils::bean1ToBean2
在您的上下文中,
map
需要一个
函数
,而方法引用
Utils::bean1ToBean2
正好满足该函数接口。