use*_*791 5 generics methods scala
在Java中,a Map可以参数化为Map<K, V>,但在Scala中,我不知道方法上多个类型参数的含义是什么,例如:
def foo[T, U, R]
Run Code Online (Sandbox Code Playgroud)
当一个类型参数参数化的方法时,很容易理解.如def f[T](t: T).
Tra*_*own 10
假设我想编写一个对任何旧的操作的泛型方法 - Map[K, V]我必须在方法类型参数列表中包含两个类型参数:
def mapToList[K, V](m: Map[K, V]): List[(K, V)] = m.toList
Run Code Online (Sandbox Code Playgroud)
三个参数的工作方式相同.假设我有一个功能A => B,另外B => C,我想他们撰写从中获取函数A来C-我需要在我的参数列表中的所有三种类型:
def andThen[A, B, C](f: A => B, g: B => C): A => C = (a: A) => g(f(a))
Run Code Online (Sandbox Code Playgroud)
这两个例子都是不重要的,因为我们已经有m.toList和f andThen g,但他们应该为多个类型参数明确的使用情况.
| 归档时间: |
|
| 查看次数: |
2475 次 |
| 最近记录: |