为什么我收到错误“没有类型实例”地图方法?
我有这个功能:
public <D> List<D> mapList(Object source, List<D> targetClass) {
return targetClass
.stream()
.map(element -> modelMapper.map(source, element))
.collect(Collectors.toList());
}
在这一行:
map(element -> modelMapper.map(source, element))
我有这个错误:
no instance of type variable r exists so that void conforms to r
知道为什么我会收到上面的错误以及如何修复它吗?
I have this function:
public <D> List<D> mapList(Object source, List<D> targetClass) {
return targetClass
.stream()
.map(element -> modelMapper.map(source, element))
.collect(Collectors.toList());
}
On this row:
map(element -> modelMapper.map(source, element))
I have this error:
no instance of type variable r exists so that void conforms to r
Any idea why I get the error above and how to fix it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Stream
类上的map
方法返回一个Stream
。ModelMapper
map
方法返回void
。因此错误。 “void”无法流式传输。
map
method onStream
class return aStream
.ModelMapper
map
method returnsvoid
.Therefore the error. "void" cannot be streamed.
类型与编译器错误提示的不匹配,返回的类型为 void 并且不会被收集。我猜 modelMapper 上的 map 方法已重载,您也可以在第二个参数上传递类类型来解决问题。
像这样的东西
Types do not match the as compiler error suggests, the returned type is void and will not be collected . I guess the map method on modelMapper is overloaded and you can pass the class type on second argument as well to resolve the issue.
some thing like