Scala深入浅出进阶经典 第82讲:Scala中List的ListBuffer是如何实现高效的遍历计算的
2015-09-27 16:51
323 查看
package com.dt.scalaInAction.demo_082 /** * Scala中List的构造是的类型约束逆变、协变、下界详解 */ object ListBuffer_Internals { def main(args: Array[String]): Unit = { val list = List(1, 2, 3, 4, 5, 6, 7, 8, 9) println(increment(list)) println(increment_MoreEffective(list)) println(increment_MostEffective(list)) } def increment(list: List[Int]): List[Int] = list match { case List() => List() case head :: tail => head+1 :: increment(tail) } def increment_MoreEffective(list: List[Int]): List[Int] = { var result = List[Int]() for(e <- list) result = result ::: List(e+1) result } def increment_MostEffective(list: List[Int]): List[Int] = { import scala.collection.mutable.ListBuffer var buffer = new ListBuffer[Int] for(e <- list) buffer += e + 1 buffer.toList } }
以上内容是从王家林老师DT大数据课程第82讲的学习笔记和个人整理。
DT大数据微信公众账号:DT_Spark
王家林老师QQ:1740415547
王家林老师微信号:18610086859
第82讲视频网站地址:http://pan.baidu.com/s/1pJKdKqn
相关文章推荐
- Javascript排序问题
- HTML表格
- JavaScript高级程序设计之面向对象的程序设计之创建对象之动态原型模式 第6.2.5讲笔记
- 05-树8 File Transfer
- 【JavaScript】【学习】一句话概括JavaScript
- JavaScript高级程序设计之面向对象的程序设计之创建对象之组合使用构造函数模式和原型模式 第6.2.4讲笔记
- 剑指Offer-9-斐波拉契数列
- css动态效果
- 函数表达式(JavaScript高程笔记)
- [LeetCode][JavaScript]Spiral Matrix II
- Scala深入浅出进阶经典 第69讲:Scala并发编程react、loop代码实战详解
- Javascript中的依赖注入
- HTML链接
- [LeetCode][JavaScript]Spiral Matrix
- js动态控制多选框的选中项
- Node.js实践第一天
- jQuery 在 jeasyui 中无法取值的解决办法
- ubuntu14.04 64位 安装H3C iNode客户端
- jQuery+Ajax+PHP+Mysql实现分页显示数据实例讲解
- HTML样式