Rob*_*b N 2 scala scala-collections
我正在学习集合,我只是在Traversable文档中注意到了这两种方法.第一个有什么意义?第二个似乎包括它.
copyToArray (xs: Array[A], start: Int, len: Int): Unit
copyToArray[B >: A](xs: Array[B], start: Int, len: Int): Unit
Run Code Online (Sandbox Code Playgroud)
你是正确的,第二个包含第一个.但是,第一个实际上并不存在.如果您仔细查看文档,您会看到以下文字[use case]:
abstract def copyToArray(xs: Array[A], start: Int, len: Int): Unit
[use case] Copies elements of this collection to an array.
Run Code Online (Sandbox Code Playgroud)
[use case]Scala API中的A 显示了签名的简化形式.这给了"典型"的使用方式,这对新的Scala程序员来说并不那么可怕,否则他们可能会被疯狂的类型签名所迷惑.
您可以通过许多其他方法看到相同的内容,包括map(其中CanBuildFrom隐藏的内容):
abstract def map[B](f: (A) ? B): CC[B]
[use case] Builds a new collection by applying a function to all elements of this collection.
def map[B, That](f: (A) ? B)(implicit bf: CanBuildFrom[Traversable[A], B, That]): That
Builds a new collection by applying a function to all elements of this collection.
Run Code Online (Sandbox Code Playgroud)
要阅读Martin Odersky讨论此问题的旧帖子,请参阅此处.
| 归档时间: |
|
| 查看次数: |
942 次 |
| 最近记录: |