Scala学习之三Scala_ 下划线占位符语法
来源:互联网 发布:淘宝联盟网页版怎么用 编辑:程序博客网 时间:2024/05/07 15:16
Scala学习之三Scala_ 下划线占位符语法:2017年8月13日12:46:11
先看例子
* _占位符的理解: */ 他们输出的是1234567 List(1,2,3,4,5,6,7).foreach( x=> print(x)) List(1,2,3,4,5,6,7).foreach( print(_)) List(1,2,3,4,5,6,7).foreach( print _) List(1,2,3,4,5,6,7).foreach( print ) List(1,2,3,4,5,6,7).foreach{ print }
println(List[String]("I am into Spark so much ","scala is powerful").flatMap(x=>x.split(" "))可以的
println(List[String]("I am into Spark so much ","scala is powerful").flatMap(_.split(" "))这个就可以
理解一:在flatMap(输入=>输出)
有了占位符_就可以不要输入了
println(List[String]("I am into Spark so much ","scala is powerful").flatMap(x=>x.split(" ")).map((_,1)).map(_._2).reduce((x,y)=>x+y))这个也可以 println(List[String]("I am into Spark so much ","scala is powerful").flatMap(x=>x.split(" ")).map((_,1)).map(_._2).reduce(_+_))可以的
分析
reduce((x,y)=>x+y))和reduce(_+_))不要输入,分别用占位符代替
println(List[String]("I am into Spark so much ","scala is powerful").flatMap(_.split(" ")).map(x=>(x,1)).map(_._2).reduce(_+_))println(List[String]("I am into Spark so much ","scala is powerful").flatMap(_.split(" ")).map((_,1)).map(_._2).reduce(_+_))//map((_,1)).和map(x=>(x,1))
println(List[String]("I am into Spark so much ","scala is powerful").flatMap(_.split(" ")).map((_,1)).map(x=>x._2).reduce(_+_))println(List[String]("I am into Spark so much ","scala is powerful").flatMap(_.split(" ")).map((_,1)).map(_._2).reduce(_+_))map(x=>x._2)和map(_._2)
占位符
一个下划线代表了一个输入参数。 上列中 _ 分别代表了1 , 2 ,3 ....
多个下划线指代多个参数:第一个下划线代表第一个参数,第二个下划线代表第二个。。。。
阅读全文
0 0
- Scala学习之三Scala_ 下划线占位符语法
- scala _ 下划线 占位符语法
- Golang语言学习之占位符“_”(下划线)
- Scala--占位符
- 三. Scala基础语法
- Scala中的占位符 _
- scala学习笔记☞三:语法续①
- scala学习之:scala并发编程(三)
- Scala语法学习
- scala基本语法学习
- Scala基本语法学习
- Android资源之String (三): html标签,语法(原生支持) 设置字体大小/颜色/下划线等
- Scala基本语法(三)
- css3学习之placeholder,也就是占位符
- rdd,scala中的占位符“_”
- Scala学习笔记:Scala语法基础
- Spark之Scala学习之路(三)
- scala学习(三)
- 搭建Hadoop开发环境
- 【字符串·Trie】uva3942 Remember the words
- STL——set
- connect()函数阻塞和非阻塞问题解决
- C语言小项目-万年历
- Scala学习之三Scala_ 下划线占位符语法
- MBR 和 GPT 分区差别
- linux-关机重启命令
- 我理解的设计模式之适配器模式
- 小明左手拿着纸牌黑桃10,右手拿着纸牌红桃8, 现在交换手中的牌, 用程序模拟实现的过程, 并输出交换前后手中的纸牌的结果
- 解决ionic输入input里的内容时会把底部tabs顶上来的情况(隐藏底部tabs)
- 四个范围代码详解
- 【第5章】Python盒子:模块、包和程序
- 2017百度之星初赛a