参数化方法

方法的返回类型可以取决于参数的类型。在这个例子中,x 是参数,Ax类型,它被称为类型参数

def f[A](x: A): A = x

f(1)         // 1
f("two")     // "two"
f[Float](3)  // 3.0F

Scala 将使用类型推断来确定返回类型,该类型约束可以在参数上调用哪些方法。因此,必须小心:以下是编译时错误,因为没有为每种类型 A 定义*

def g[A](x: A): A = 2 * x  // Won't compile