Seq[T]和T*之间的Scala是否有差异?
我的IDE工具显示Seq[T]和T*之间的Scala是否有差异?,scala,variadic-functions,Scala,Variadic Functions,我的IDE工具显示xs在以下代码段中具有类型Int*: def accept(xs: Int*) = true 然而,language引用指出,声明为T*的重复参数的类型为Seq[T]。Int*和Seq[Int]之间有区别吗?是的,它们是不同的。参见,例如,它们是不同的,它介于bug和令人遗憾的特性之间,T*泄漏到类型签名中 假设不担心破坏现有代码,那么规范会对方法之外的重复参数类型说些什么?这是已知的还是一个有争议的问题?我觉得def(t:t*)=t中的返回类型应该是Seq[t]。它毫无疑问
xs
在以下代码段中具有类型Int*
:
def accept(xs: Int*) = true
然而,language引用指出,声明为
T*
的重复参数的类型为Seq[T]
。Int*
和Seq[Int]
之间有区别吗?是的,它们是不同的。参见,例如,它们是不同的,它介于bug和令人遗憾的特性之间,T*泄漏到类型签名中
假设不担心破坏现有代码,那么规范会对方法之外的重复参数类型说些什么?这是已知的还是一个有争议的问题?我觉得
def(t:t*)=t中的返回类型应该是Seq[t]
。它毫无疑问应该是Seq[t]。