我一直在使用:_*
将Seq[String]
转换为String*
,我意识到我不明白这是如何在后台工作的。
有没有一个简单的方法来思考这个问题?
在引擎盖下,String*
作为Seq[String]
传递。这只是语法糖:
def blah(ss: String*) = {...}
blah("Hi","there")
变成
def blah(ss: Seq[String]) = {...}
blah(Seq("Hi", "there"))
:_*
的意思只是"拿着糖,我已经得到了你需要的——一个Seq!"