gpt4 book ai didi

scala - 在 scala 中使用可变长度参数

转载 作者:行者123 更新时间:2023-12-03 04:18:46 25 4
gpt4 key购买 nike

我知道如何定义具有可变长度参数的方法:

  case class taxonomy(vocabularies:(String,Set[String])*)

客户端代码非常干净:

  val terms=taxonomy("topics"->Set("economic","politic")
,"tag"->Set("Libya","evolution")
)

但我想知道当我有一个像这样的变量(而不是变量序列)时如何使用这个案例类:

val notFormattedTerms = Map("topics"->Set("economic","politic")
,"tag"->Set("Libya","evolution"))

最佳答案

taxonomy(notFormattedTerms.toSeq:_*)

使用 : _* 您实际上可以转换序列参数,使其看起来好像多个参数已传递给可变长度方法。然而,这种转换仅适用于(有序?)简单序列类型,并且在本例中不适用于 Map。因此,之前必须使用显式的 toSeq

关于scala - 在 scala 中使用可变长度参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5079845/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com