我有一个类定义和两个函数定义
class Queue[T] (
private val leading: List[T]
private val trailing: List[T]
){}
def a[T](xs: T*) = new Queue[T](xs.toList, Nil)
def b[T](xs: T*) = new Queue(xs.toList, Nil)
从这里开始,class被定义为泛型类型,并且还有两个函数。
但是在这里,两个函数之间的区别在于创建实例。
两者都运行良好,并且没有使用以下表达式创建错误:
a(1,2,3,4)
b(1,2,3,4)
a[Int](1,2,3,4)
b[Int](1,2,3,4)
但是,我无法弄清楚区别是什么。
答案 0 :(得分:4)
没有。类UserViewModel
的类型参数T
将被推断为方法Queue
的类型参数T
。