检查字符串数组中是否存在Scala枚举中的值

检查字符串数组中是否存在Scala枚举中的值,scala,Scala,我有这样一个枚举: object VersionTokens extends Enumeration { type VersionTokens = Value val ALL = Value("ALL") val CURRENT = Value("CURRENT") } 是否有方法检查枚举中的任何值是否存在于字符串数组中 伪代码: val versions = Array("CURRENT", "SOMETHING ELSE") if(versions.contains(Vers

我有这样一个枚举:

object VersionTokens extends Enumeration {
  type VersionTokens = Value

  val ALL = Value("ALL")
  val CURRENT = Value("CURRENT")
}
是否有方法检查枚举中的任何值是否存在于字符串数组中

伪代码:

val versions = Array("CURRENT", "SOMETHING ELSE")
if(versions.contains(VersionTokens)) true
else false

// should return true since "CURRENT exists in the enumeration

例如,您可以检查枚举的值集是否与数组相交:

VersionTokens.values.map(u.toString).toArray.intersect(versions).nonEmpty
或者,可读性较低但速度较快:

VersionTokens.values.map(u.toString.toArray.exists)(versions.contains)