Scala中使用For表达式实现内幕思考

学习了Scala中使用For表达式实现内幕思考,filter是if ,for是一般的表达式,有map ,filter等,建议用for循环来代替,更简洁跟具有表现力

例子如下:

Object For_Advancde {

Def main(args: Array[String]) {}

Def map[A,B](List: List[A], f:A=>B):List[B]=

For (element <-list) yield f(element)

Def flatmap[A,B](List: List[A], f:A=>B):List[B]=

For (x <-list; y<-f(x)) yield y

Def  fileter[A](list:List[A] , f: A=> Boolean): List[A]=

For (elem<-list if f(elem) yield elem

王家林亲授《DT大数据梦工厂》大数据实战视频“Scala深入浅出实战经典”视频、音频和PPT下载!第89讲:Scala中使用For表达式实现内幕思考
百度云盘:http://pan.baidu.com/s/1mgGMIH6
360云盘:http://yunpan.cn/cdbYHVj4qRUYt  访问密码 4c0d
腾讯微云:http://url.cn/dfzKAx

时间: 2024-12-11 01:04:16

Scala中使用For表达式实现内幕思考的相关文章

Scala 深入浅出实战经典 第89讲:Scala中使用For表达式实现内幕思考

for循环内部的代码跳转都是map, withFilter等方法 for在比map,filter,flatMap表现更直接,可以用for替换实现 package com.dt.scala.forexpression object For_Advanced { def main(args: Array[String]) {} def map[A, B](list: List[A], f: A => B): List[B] = for(element <- list) yield f(elemen

Scala中List和ListBuffer设计实现思考

今日[DT大数据梦工厂视频]<第84讲:Scala中List和ListBuffer设计实现思考>51CTO视频:http://edu.51cto.com/lesson/id-71363.html土豆视频:http://www.tudou.com/programs/view/9vOkwWDGF6M/ (DT大数据梦工厂1至84讲scala的所有视频.PPT和代码在百度云盘的链接:http://url.cn/fSFPjS)百度云盘:http://pan.baidu.com/s/1c0FGBzq36

Scala深入浅出实战经典《第87讲:Scala中使用For表达式做查询》笔记

如知其非义,斯速已矣! 第87讲:Scala中使用For表达式做查询 Goal: For表达式做查询 Gains: for循环的应用 自定义一种类型,根据这种类型创建了一个List数组 针对数组中的内容,利用for循环可以进行相关的查询 More: 使用for循环来做查询~ ------------------------------------------------------------------------------------ 信息来源于 DT大数据梦工厂微信公众账号:DT_Spa

Scala深入浅出实战经典《第88讲:Scala中使用For表达式实现map、flatMap、filter》笔记

简直了....晚上回来突然看到了进巨的原稿,忍不住撸了幅三爷,然后什么都没做就23点了... 第88讲:Scala中使用For表达式实现map.flatMap.filter Goal: For表达式实现map/flatMap/filter Gains: map/flatMap/filter是泛型 More: ...... ------------------------------------------------------------------------------------ 信息来

Scala中使用For表达式做查询

学习了Scala中使用For表达式做查询,很多编程中对数据库.文件.网络数据进行查询,应用for表达循环匹配,例子如下: Case calss Book (title:String, authors:List[tring]) Object For_Query { Def main(args:Array[String]) { Val books : List[Book]=List( Book(“Structure and Interpretation”, List(“Abelson,Harold”

Scala中使用For表达式实现map、flatMap、filter

学习了Scala中使用For表达式实现map.flatMap.filter,可以实现广泛的应用 例子如下: Object For_Advancde { Def main(args: Array[String]) {} Def map[A,B](List: List[A], f:A=>B):List[B]= For (element <-list) yield f(element) Def flatmap[A,B](List: List[A], f:A=>B):List[B]= For (

Scala深入浅出实战经典《第84讲:Scala中List和ListBuffer设计实现思考》笔记

感觉视频时间比较短,不过对于上班狗来说还比较适合,地铁上听一遍,回来做笔记时可以再听一遍,啦啦啦... 第84讲:Scala中List和ListBuffer设计实现思考 Goal:从case class::[B]出发思考 List, ListBuffer的设计 Gains: 1) case calss ::[B] 中虽然用的是var(可变),但是有private[scala]的限制: 如果没有改限制,可以改变除首元素外的其他元素,对共享数据带来麻烦. 2)保证scala元素本身操作的高效性,外部

王家林亲授《DT大数据梦工厂》第84讲:Scala中List和ListBuffer设计实现思考

我一直觉得Scala里的List设计的很诡异,今天阅读了王家林老师的 <第84讲:Scala中List和ListBuffer设计实现思考 >, 然后我就豁然开朗了. Scala的List是immutable的,因此将其声明为var, 有了这个隐式转换,操作ResultSet就变简单了. =============================================================== 王家林亲授<DT大数据梦工厂>大数据实战视频“Scala深入浅出实战经

Scala中的函数表达式

最近看Spark的东西,由于之前没有接触过lambda函数表达式,所以搜了点资料,特地纪录在此 Scala中的Lambda表达式 在函数式编程中,函数是基本的构造块.Scala融合了java中的面向对象编程和函数式编程.在Scala中,一个lambda表达式是种叫做“函数”或者“函数文本”.Scala中的函数属于一等公民.它们可以被分配给vals或者vars(最终变量或者非最终变量),它们可以作为其他函数的参数,也可以组合成新的函数. 在Scala中一个函数文本写成如下形式: ? 1 (argu