Scala学习笔记——20170819
来源:互联网 发布:erp系统模拟软件 编辑:程序博客网 时间:2024/06/01 09:23
Scala 闭包
object Demo { def main(args: Array[String]): Unit = { a(0) aa(1)(2)//先返回一个函数,向函数传一个值 } //闭包 def a(x: Int): Unit = { var num = 1 def b(y: Int): Unit = { println(x + num + y) } b(2) } //闭包 def aa(x: Int): (Int) => Unit = (y: Int) => { println("x=" + x) println("y=" + y) }}
Scala 集合
- 不可变集合 (增、删、改会返回一个新的集合)
def demoVal(): Unit = { println("---val---") val list = List(5, 3, 4, 7, 2) println(list.head) //第一个 println(list.tail) //除第一个的其他 println(list.isEmpty) //是否为null val list1 = List(5, 3, 4, 7, 2) val list2 = List(15, 3, 5, 6, 7, 6) val list3 = list1 ++ list2 //List合并 或者 list1 ::: list2 println(list3) val list4 = list2 :+ 10 //在后面增加元素 10 +: list2 在头部添加元素 println(list4) val list5 = list1.addString(new StringBuilder, ":") println(list5) println(list1.apply(1)) //或者list(1) val list6 = List.fill(3)("hello") //3个元素,都是“hello” println(list6) val list7 = List.tabulate(6)(n => n * n) //n是角标,0*0 1*1 2*2 3*3 4*4 5*5 println(list7) println(list1.reverse) //倒序 println(list1.sorted) //由小到大排序 println(list1.sortWith(_ > _)) //由大到小排序 val list8 = list1.drop(1) //删除一个元素 println(list8) val list9 = list1.dropWhile(_ < 6) //循环删除小于6的元素,当不满足条件时,马上跳出循环 println("list9 -> " + list9) val list10 = List("hello", "world") println(list10.mapConserve(_.toUpperCase))//对list内的所有元素进行操作 println(list10.map(_.toUpperCase)) println(list1.takeWhile(_ < 6)) //循环小于6的元素,当不满足条件时,马上跳出循环 println(list1.filter(_ < 6)) //过滤出小于6的全部元素 println(list1.diff(list2)) //去除list1中list1与list2的交集 println(list2.distinct) //去重 //后面还有很多……}
- 可变集合 (增、删、改、查)
def demoVar(): Unit ={ println("---var---") var list = new ListBuffer[Int] list += 1 list += 3 list += 5 println(list)}
Scala 迭代器
- 方法,遍历集合
object IteratorDemo { def main(args: Array[String]): Unit = { val list = List(1, 2, 3, 5) val i = list.iterator while (i.hasNext) { println(i.next()) } println("---") val ri = list.reverseIterator //反向遍历 while (ri.hasNext) { println(ri.next()) } }}
阅读全文
0 0
- Scala学习笔记——20170819
- Scala学习笔记—语法
- Scala学习笔记1——初始Scala
- scala 学习笔记——集合
- Scala学习笔记——20170817
- Scala学习笔记——20170818
- Scala学习笔记——20170820
- Scala学习笔记(一)—chapter1
- Scala学习笔记(二)—chapter2
- Scala学习笔记(三)—chapter3
- 学习笔记—scala基础II
- 学习笔记—scala高级编程
- Scala学习笔记——不停更新中。。。
- Scala 学习笔记(二)— Everything is an object
- Scala学习笔记1
- Scala学习笔记2
- scala语言学习笔记
- Scala学习笔记
- HDU-1730-Northcott Game【nimm 博弈】
- Hibernate Part2
- 安卓自动化测试之uiautomator(Python篇)四 Uisecltor
- 欢迎使用CSDN-markdown编辑器
- MySQL 必知必会 学习笔记三
- Scala学习笔记——20170819
- redis发布订阅java代码实现
- 关于二叉树四种遍历方式以及一些基本操作的方法总结
- Python两个内置函数——locals 、globals 和命名空间说明
- python数据分析(1)——获取微信好友的统计信息
- 人生无题
- B. Inna and Nine----思维题
- 埃筛(区间筛)
- composer使用self-update时zlib_decode()