检查字符串数组中是否存在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)