scala-35:List的map、flatMap、foreach、filter操作代码实战
2015-12-20 15:40
507 查看
内容:
1、对list的map和flatmap实战
2、对list的foreach和filter实战
Map:对list中的多有元素执行一个具体的函数,结果为一个list;
Flatmap:对list的内部成员进行map,map的结果为一个list,然后在如果的基础上进行flat将map操作后的结果进行合并;
Foreach:对list中成员执行一个函数,与map和flatmap不同的是,foreach产生的结果是Unit;
Filter:过滤出list中符合条件的元素,filter执行的结果为Boolean
类型的函数。
1、对list的map和flatmap实战
2、对list的foreach和filter实战
Map:对list中的多有元素执行一个具体的函数,结果为一个list;
Flatmap:对list的内部成员进行map,map的结果为一个list,然后在如果的基础上进行flat将map操作后的结果进行合并;
Foreach:对list中成员执行一个函数,与map和flatmap不同的是,foreach产生的结果是Unit;
Filter:过滤出list中符合条件的元素,filter执行的结果为Boolean
类型的函数。
println(List(1, 2, 3, 4, 6) map (_ + 1)) //map(_+1)为对list元素+1的执行函数, 等价于map(item=>item+1) val data = List("Scala", "Hadoop", "Spark") println(data map (_.length)) println(data map (_.toList.reverse.mkString)) //tolist将字符串重新转化为list,reverse.mkString将字符串颠倒,输出结果 为:list(alacS,poodaH,krapS) println(data.map(_.toList)) println(data.flatMap(_.toList)) //结果为:list(S,c,a,l,a,H,a,d,o,o,p,S,p,a,r,k) println(List.range(1, 10) flatMap (i => List.range(1, i) map (j => (i, j)))) //j=>(i,j)为tuple元组,结合flatmap和map;range(i,j)为左闭右开 var sum = 0 List(1, 2, 3, 4, 5) foreach (sum += _) println("sum : " + sum) println(List(1, 2, 3, 4, 6, 7, 8, 9, 10) filter (_ % 2 ==0))//取偶 println(data filter (_.length == 5))
相关文章推荐
- python碰到问题的时候应该如何查找帮助
- Resource Governor 控制 Memory 和 CPU 的使用
- scala-34:对List进行高效的排序和倒排序代码实战
- PHP XML的处理
- IOC实现完全接口编程
- php中实现伪静态网址
- PHP GD库常用功能封装
- python核心编程-继承
- C#基础之——C#总观
- 代码优化--数据字典(dictionary)的使用
- 《C++标准程序库》笔记之四
- Python2还是Python3
- Java中的static关键字解析
- C#如何彻底关闭应用程序及附属线程
- Cpp--getch(),getche(),getchar()的区别
- Sping Boot 初探(一)--- 一分钟构建SpringWeb
- CPP入门(3):输入、输出
- c语言 商店购物车系统
- [Eclipse] - eclipse集成jboss7.1
- PHP分页类