我试着用谷歌搜索这个,但我得到的只是关于小名人的故事。鉴于缺乏文档,什么是 DList ?
最佳答案
这是一个差异列表,沿着 "Difference List as functions"
scala> val (l1, l2, l3) = (List(1, 2, 3), List(4, 5, 6), List(7, 8, 9))
l1: List[Int] = List(1, 2, 3)
l2: List[Int] = List(4, 5, 6)
l3: List[Int] = List(7, 8, 9)
高效的前置:
scala> l1 ::: l2 ::: l3
res8: List[Int] = List(1, 2, 3, 4, 5, 6, 7, 8, 9)
append 效率低下。这将创建一个中间列表 (l1++ l2),然后 ((l1++ l2)++ l3)
scala> l1 ++ l2 ++ l3 // inefficient
res9: List[Int] = List(1, 2, 3, 4, 5, 6, 7, 8, 9)
DList
存储追加,只需要创建一个完整的列表,有效地调用:scala> List(l1, l2, l3) reduceRight ( _ ::: _)
res10: List[Int] = List(1, 2, 3, 4, 5, 6, 7, 8, 9)
关于list - 什么是 DList?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3352418/