package firstscala
object FirstWc {
def main(args: Array[String]): Unit = {
val list = List("hello tom hello jerry","hello kitty hello hello")
//第一种计数器方式
val wc = list.flatMap(_.split(" ")).map((_,1)).groupBy(_._1).map(x =>(x._1,x._2.size)).toList.sortBy(_._2).reverse
println(wc)
//第二种计数器
val wc1 = list.flatMap(_.split(" ")).map((_,1)).groupBy(_._1).mapValues(_.size).toList.sortBy(_._2).reverse
println(wc1)
val a = List(1,2,3,4,5)
println(a.sum)
println(a.reduce(_+_))
println(a.reduce(_-_))
println(a.reduceLeft(_-_))
println(a.reduceRight(_-_))
}
}
a.reduceRight(_-_) 计算方式是(1-(2-(3-(4-5))))
a.reduceLeft(_-_) 计算方式是((((1-2)-3)-4)-5)