scala - 验证泛型类型参数是否符合 2 个不相关的类型

标签 scala generics variance type-bounds

在 Scala 中,可以为泛型参数指定类型绑定(bind)。

例如,要确保A 符合SomeType1,可以这样做:

trait Example[A <: SomeType1]

现在,假设我需要确保 A 符合 2 个不相关的类型 SomeType1SomeType2

有办法吗?

最佳答案

它只是一种产品类型,在Scala中你可以用with来表达这样的东西,即:

trait Example[A <: SomeType1 with SomeType2]

关于scala - 验证泛型类型参数是否符合 2 个不相关的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25906846/

相关文章:

java - 从泛型类派生类型

java - 检查异常差异

generics - Kotlin 中的 "Bidirectional"类型投影/方差?

C# : Is Variance (Covariance/Contravariance) another word for Polymorphism?

Scala:流上的 filter 和 takeWhile 有什么区别?

scala - 为什么 `Random.nextInt` 被认为不是 ' composable, modular, easily parallelized'

scala - 如何在 IntelliJ IDEA 14.0.x 中定义/安装 Scala Facet?

java - 是否有任何完全通用的 Map.get() 版本,即 "V get(K key)"

scala - 如何使用 argmax 方法扩展 Scala 集合?

c# - 如何将 C# 泛型类型传递给另一个类