0 目录
1.foreach函数
2.map函数
3. filter和filterNot(过滤函数)
4. collect函数
5. min和max
6. minBy和maxBy
7. sum函数
8. find 函数
9. flatten 函数
10 flatMap函数
11 mapValues 函数
12 sorted函数
13 sortBy和sortWith 函数
14. partition和span 函数
1.foreach函数
作用:迭代遍历集合中的每个元素,对每个元素进行处理 ,但是没有返回值 ,常用于打印结果数据 !
ls.foreach(println) // 打印每个元素
ls.foreach(println(_))// 打印每个元素
ls.foreach(x=>println(x*10)) // 每个元素乘以10 打印结果
ls.foreach(x=>print(x+" "))// 打印每个元素 空格隔开
2.map函数
作用: 适用于任意集合 ,注意Map集合的用法 map函数遍历每个元素处理返回原集合类型的新集合 , 也可以不返回数据 列表,数组,Map中都有map函数 元组中没有map函数
注意:接收返回值 也可以适用for循环的推导式来实现接收返回值(for 循环的推导式,也常用与对每个元素处理完成之后,将结果集放到新的集合中)
val arr = Array[String]("JAVA", "C++", "SCALA")
val ls = List(1, 3, 5, 7, 9)
val set = Set(1, 3, 5, 7)
val mp = Map[String, Int]("ZSS" -> 100, "LSS" -> 99)
// map函数遍历每个元素处理返回原集合类型的新集合
val new_arr: Array[String] = arr.map(x => x)
val new_list: List[Int] = ls.map(x => x)
val new_set: Set[Int] = set.map(x => x)
// Map集合使用map函数
val new_Map1: Map[String, Int] = mp.map({ case v: (String, Int) => (v._1, v._2 * 10) })
val new_Map2: Map[String, Int] = mp.map(e => (e._1, e._2 + 100))
// map函数也可以不返回数据
ls.map(println(_))
3. filter和filterNot(过滤函数)
filter函数作用:按照一定的条件对集合中的元素进行过滤,符合条件的元素放入新的集合中,函数的用法,也可以进行多条件过滤
filterNot函数 作用:filterNot返回不符合自己条件的新的集合
val ls: List[Int] = List.range(1,10)
ls.filter(x=>x%2==0) //过滤每一个元素取模2 等于0 的元素
val new_list: List[Int] = ls.filter(_ % 2 == 0)// _ 代表每个元素
new_list .foreach(x=>print(x+" ")) // 2 4 6 8
ls.filterNot(_%2!=1).foreach(x=>print(x+" ")) 1 3 5 7 9
// 每个元素进行过滤
val set = Set("spark" , "scala" , "c++" , "java")
val new_set: Set[String] = set.filter(_.startsWith("s")) //筛选每一个元素中首字母为s开头的元素