scala - 带有可变参数的模式匹配
问题描述
请建议最好是实现以下代码:
要求:传递单个字符串或不传递参数
object Twofer {
def twofer(name: String*): String = name match {
case Seq(nm) => s"One for $nm, one for me."
case List() => "One for you, one for me."
}
}
解决方案
也许类似于以下内容:
def twofer(names: String*): String = List(names: _*) match {
case Nil => "No names!"
case n :: Nil => s"Single name $n"
case ls => s"Multiple names $ls"
}
推荐阅读
- bash - 服务已启用但失败。我怎样才能让它运行?
- java - 如何解决“找不到名称'withXml'的匹配项”输出?
- r - 如何在字符串向量上迭代调用 sqldf?(在 R 中命名列表元素)
- java - 为什么 java.util.InputMismatchException?
- python - 张量名称可以属于 Tensorflow 中的不同名称范围吗?
- java - 无法找到 Java 首选项在 Windows 中的存储位置
- security - Snyk.io 如何将其定位为在特定分支而不是默认分支上运行?
- oop - 编写转换器,以 OOP 方式设计
- flutter - Gif performance vs Animation performance
- python - 隐藏然后显示父小部件后如何恢复对小部件的关注?