摘要: 通过隐式转换,程序员可以在编写Scala程序时故意漏掉一些信息,让编译器去尝试在编译期间自动推导出这些信息来,这种特性可以极大的减少代码量,忽略那些冗长,过于细节的代码。 使用方式: 1.将方法或变量标记为implicit 2.将方法的参数列表标记为implicit 3.将类标记为impli ...
分类:
其他好文 时间:
2016-04-04 14:38:13
阅读次数:
151
这是阅读sparkContext类的代码做的一个笔记。阅读这个类的时候,主要的任务就是搞清楚sparkContext是怎么构造的,java、C#的class的初始化都是放在一个方法中的,而scala的主构造函数代码几乎散落在真个sparkContext类中,这就需要我们将其整理出来,才能有条理的进行 ...
分类:
其他好文 时间:
2016-04-04 11:35:00
阅读次数:
106
Scala 的 Trait 结合了抽象类与接口的能力,通过混入来获得灵活的多态能力。 代码如下所示: FileAbility 提供了读取文件、处理文件的能力, 其中继承一个空实现的 Trait:LineHandler, 类似于模板方法模式; 在 ScalaTraitDemo 的 handleFile ...
分类:
其他好文 时间:
2016-03-28 02:05:19
阅读次数:
203
scala如果你想实现像if ,while等类似的控制结构,根本没有值要传入花括号{}直接的代码里。要怎么实现。 比如说,我们要实现一个断言的控制结构,myAssert(), myAssert函数参考自带参数和一个标示变量,如果标示位为false,则什么都不做,如果为true则进行正常判断。 下面是
分类:
其他好文 时间:
2016-03-21 17:55:41
阅读次数:
278
快速了解Scala技术栈 我无可救药地成为了Scala的超级粉丝。在我使用Scala开发项目以及编写框架后,它就仿佛凝聚成为一个巨大的黑洞,吸引力使我不得不飞向它,以至于开始背离Java。固然Java 8为Java阵营增添了一丝亮色,却是望眼欲穿,千呼万唤始出来。而Scala程序员,却早就在享受la
分类:
其他好文 时间:
2016-03-16 12:11:00
阅读次数:
305
一、安装JDK(具体安装省略) 二、安装Scala(具体安装省略) 三、安装IDEA 1、打开后会看到如下,然后点击OK 2、点击Next:Default plugins,进入以下页面: 3、点击Scala的Install安装(确保联网),等待完成后,出现 4、点击Create New Projec
分类:
其他好文 时间:
2016-03-06 19:20:15
阅读次数:
147
今天通过崔鹏飞的博客,地址http://cuipengfei.me,我学到了type alias的使用方法,借助于这个特性,可以给予它来实现好多封装。 比如说: type Fly = ()=>Unit def doFly(fly:Fly): Unit ={ fly() } val birdFly =
分类:
其他好文 时间:
2016-03-04 00:24:14
阅读次数:
234
1、class scala的类和C#中的类有点不一样,诸如: 声明一个未用priavate修饰的字段 var age,scala编译器会字段帮我们生产一个私有字段和2个公有方法get和set ,这和C#的简易属性类似;若使用了private修饰,则它的方法也将会是私有的。这就是所谓的统一访问原则。
分类:
其他好文 时间:
2016-03-03 22:41:54
阅读次数:
530
if 表达式 Scala 的 if 如同许多其它语言中的一样工作。它测试一个状态并据其是否为真,执行两个分支中的一个: var filename = "default.txt" if (!args.isEmpty) filename = args(0) 由于 Scala 的 if 是能返回值的表达式
分类:
其他好文 时间:
2016-02-28 18:29:54
阅读次数:
182
如果你熟悉Java,你会很开心地发现Java基本类型和操作符在Scala里有同样的意思。然而即使你是一位资深Java开发者,这里也仍然有一些有趣的差别使得本章值得一读。因为本章提到的一些Scala的方面实质上与Java相同,我们插入了一些注释,Java开发者可以安全跳过,以加快你的进程。本章里,你会
分类:
其他好文 时间:
2016-02-23 20:38:11
阅读次数:
301