这两个陈述的行为相同:
def getNum(inp: String): Double = inp match { case "" | null => 0.0 case _ => inp.toDouble }
def getNum(inp: String): Double = inp match { case "" | null => 0.0 case x => x.toDouble }
问题是,哪一个应该使用哪一个,哪一个基本上比另一个好?
答案 0 :(得分:3)
两者的字节码相同,因此您可以使用您喜欢的风格。
请注意,在某些情况下,您可能会将复杂表达式作为要匹配的值的来源,这使得引用更加困难。因此,您可以使用case x => x.toDouble
表单获得更大的样式一致性。