java8 lambda中是否有类型转换值的简写

java8 lambda中是否有类型转换值的简写,java,lambda,java-8,method-reference,Java,Lambda,Java 8,Method Reference,目前我的做法是: .map((service) -> (ClassType) service.getList()) 这有速记吗 .map((ClassType) Service::getList) 没有。但是类型转换有设计问题的味道。为什么首先需要强制转换?@JBNizet服务类是第三方库。它返回一个对象列表而不是一个特定的类。我能想到的最接近的是.map(Service::getList).map(ClassType.class::cast),但我发现它的可读性不如使用lambda表

目前我的做法是:

.map((service) -> (ClassType) service.getList())
这有速记吗

.map((ClassType) Service::getList)

没有。但是类型转换有设计问题的味道。为什么首先需要强制转换?@JBNizet服务类是第三方库。它返回一个对象列表而不是一个特定的类。我能想到的最接近的是
.map(Service::getList).map(ClassType.class::cast)
,但我发现它的可读性不如使用lambda表达式。@VivekGoel,考虑创建一个包装类或一组实用方法,调用第三方API执行所有必要的强制转换,然后使用这些方法。这样,您就不会在业务逻辑代码中使用难看的强制转换。@Vivek Goel:服务类返回列表没有问题。问题是为什么不能简单地使用这个列表,而需要那个特定的类。这就是设计的味道。如果服务类的API设计人员决定将
List
声明为返回类型,他们通常希望您不依赖于特定类型的列表。