首页 > 解决方案 > 比较两个字符串的其他含义

问题描述

由于字符串中的含义,我在比较字符串时遇到了很大的问题。例如,我有像“Yellow”这样的字符串和像“Blue”这样的字符串。在我的应用程序中,黄色小于蓝色。那么我如何建模呢?我尝试使用这样的枚举

object Color extends Enumeration {
 val yellow = Value(0)
 val blue  = Value(1)
}

在我的职能中,我有

def isBigger(color1 : String, color2 : String) = Boolean = {
???
}

但我不确定如何比较它们。请一些建议。

标签: scala

解决方案


您可以使用 转换StringColorwithName,然后进行比较:

object Color extends Enumeration {
 val yellow = Value(0)
 val blue  = Value(1)
}
def isBigger(color1 : String, color2 : String) : Boolean = 
     Color.withName(color1) < Color.withName(color2)

println(isBigger("blue", "yellow"))  //false
println(isBigger("yellow", "blue"))  //true

推荐阅读