我该如何编写一个函数,在其中用通用类型执行一个 case 语句?
- 论坛
- 我该如何编写一个函数,在其中用通用类型执行一个 case 语句?
15 浏览
我该如何编写一个函数,在其中用通用类型执行一个 case 语句?
这个问题已经有了答案:
我想写一个像这样的函数:
def genericCase[T]() : PartialFunction[Any, T] = { case Wrapper(_, item: T) => item case Wrapper(item: T, _) => item }
简而言之,我想要一种方法来重复使用不同类型的模式匹配结构。
编译器告诉我由于类型擦除,case x:T
永远不会匹配。
有什么替代方法来执行这种通用案例声明吗?我也尝试使用反射API中的类型作为函数的参数,但我们无法解决该问题。
admin 更改状态以发布 2023年5月25日