字符串高级操作
val globalName = "Jam"
println(s"his name is $globalName")
val message =
"""
|hello
|world
""".stripMargin
println(message)
在这里插入代码片
高阶函数
高阶函数
map、filter、flatmap、foreach、reduce等
val l = List(1, 2, 3, 4)
l.map(x => x*2).foreach(x => println(x))
// _表示占位符
l.map(_ * 2).foreach(println(_))
l.filter(_ > 3).foreach(println(_))
// 0 表示初始值 后面的函数表示结果运算
println(l.fold(10)(_ + _))
l.foldLeft(0)(_ - _)
l.max
l.min
val l1 = List(2,13,1)
println(l1.reduce(_ * _))
println(l1.reduceLeft(_ - _))
println(l1.reduceRight(_ - _))
val l2 = List(List(1,2,3), List(4,5,6))
l2.flatten.map(_*2).foreach(print)
val body = "hello,world"
val text = List(body)
// 先map 然后flatten
l.map(a => Map(a -> a)).foreach(print)
println(text.flatMap(_.split(",")).map((_, 1)))
// 根据列表分组
val l3 = List((1,2), (1, 3))
println(l3.groupBy(_._2))
匿名函数
val add = (x:Int, y:Int) => x + y
curry函数
def sum(a: Int)(b: Int) = a + b
sum(1)(2)