scala
Anddd_7
这个作者很懒,什么都没留下…
展开
-
Scala学习整理[第七-九章 函数化编程的函数]<Programming In Scala>
第七章 内建控制结构 使用scala的语法糖和特性 ,改善代码结构 ,更少的var变量 /更简单的循环 /更多的嵌套筛选函数 .//可以自定义包结构 ,还可以在同一文件中定义多个包package SecondWithProgrammingInScala.Chapter7 { class ControlStructure(x: Int, y: Int) { var temp = x原创 2017-01-04 10:58:04 · 323 阅读 · 0 评论 -
Scala学习整理[第二十二-二十三章 List和For循环]<Programming In Scala>
第二十二章 List的实现/** * List的实现 * 默认List -> scala.collection.immutable.List * * 本章解析了List的源码 ,在源码的内部使用了var while 循环 ,而非全部的val 递归 * 因为循环的效率是大于等于递归的 * scala的"函数化"编程其实是 '通过合理的封装,使得开发流程是函数化的' ,这样会使原创 2017-01-13 17:05:53 · 363 阅读 · 0 评论 -
Scala学习整理[第十六章 List应用与排序算法]<Programming In Scala>
package SecondWithProgrammingInScalaimport scala.collection.mutable/** * 之前被scala的书写方式吸引 ,想要以scala的方式去写排序方法 * 但在实际操作中 ,遇到一些困难 * 主要在于一些排序方法需要使用"交换"这种操作 ,很显然会违背scala使用变量的条件 * 而一些排序是以 一步一步 为基础 ,无法原创 2017-01-10 18:07:29 · 313 阅读 · 0 评论 -
Scala学习整理[第十七-十八章 集合和有状态对象]<Programming In Scala>
这两章内容之前有所提到 ,因此不再赘述package SecondWithProgrammingInScalaimport scala.collection.mutableimport scala.collection.mutable.Stackimport scala.collection.mutable.{ArrayBuffer, ListBuffer}/** * 集合库 * m原创 2017-01-10 18:09:19 · 216 阅读 · 0 评论 -
Scala学习整理[第二十四-二十六章 抽取器和XML]<Programming In Scala>
第二十四章 抽取器package SecondWithProgrammingInScala/** * 抽取器 * * 抽取器可以在匹配的同时进行分解 ,可以直接抽出里面的值 * 相当与 is是非语句 + get方法 * 通常配合模式匹配使用 ,在之前章节中匹配并获取数组值 Array(x,y)=> x+y ,也是抽取器 * * 之前的模式匹配和样本类 ,标注了case的样原创 2017-01-16 15:01:09 · 341 阅读 · 0 评论 -
Scala学习整理[第三十章 Actor和并发]<Programming In Scala>
第三十章 Actor和并发package SecondWithProgrammingInScala/** * Actor和并发 * * Java采用同步 synchronized ,锁的机制能有效的控制共享数据的操作 ,但是也带来一些死锁和效率上的问题 ,非常依赖程序猿的经验 * Scala提供了一套模型 :actor ,不共享数据 ,依赖消息传递 (scala原生的actor已替换原创 2017-01-19 15:16:09 · 255 阅读 · 0 评论 -
Scala学习整理[第二十七-二十九章 模块化编程和Java]<Programming In Scala>
第二十七章 模块化编程package SecondWithProgrammingInScala.Chapter27import SecondWithProgrammingInScala.Chapter27.SimpleDatabase.FoodCategory/** * 适用对象的模块化编程 * * 即对程序合理的分层和组织 ,将功能划分为一个个模块 ,使之易于修改和替换 ,而对其他模块原创 2017-01-19 15:14:10 · 492 阅读 · 0 评论 -
Scala学习整理[第三十一章 连接符解析]<Programming In Scala>
第三十一章 连接符解析(Parser工具)package SecondWithProgrammingInScalaimport scala.util.parsing.combinator.{JavaTokenParsers, RegexParsers}/** * 连接符解析 * * scala提供了一个连接符解释器 ,可以借助他实现一个编译器 ,编译解释你自己的文法 * [上下文无关原创 2017-01-20 15:44:08 · 816 阅读 · 0 评论 -
Scala学习整理[第三十二章 GUI编程]<Programming In Scala>
第三十二章 GUI编程package SecondWithProgrammingInScalaimport java.io.Fileimport scala.swing.{TextField, _}import scala.swing.event.{ButtonClicked, EditDone}/** * GUI 编程 * 大致的使用和实际效果和JavaSwing没啥区别 * 之前使原创 2017-01-20 20:57:59 · 367 阅读 · 0 评论 -
Scala学习整理[第十九章 泛型和约束系统]<Programming In Scala>
第十九章 泛型和约束系统 这章是scala的重点和难点 ,建议多找一点资料和范例理解 ,scala很多库函数都使用了这种语法 ,了解后才能更好的阅读源码 .package SecondWithProgrammingInScalaimport java.util.Comparator/** * scala的泛型和约束[类型系统] * 书上的例子比较散 ,所以参考了其他资料来了解scala原创 2017-01-13 15:41:05 · 313 阅读 · 0 评论 -
Scala学习整理[第二十-二十一章 抽象成员和隐式转换]<Programming In Scala>
第二十章 抽象成员package SecondWithProgrammingInScala/** * 抽象成员 * 不完全定义的类或者特质 ,包含val,var,def方法,type类型 */trait Abstract { //类型成员 : 简化类型参数 ,方便定义 type T def transform(x: T): T //表示确定的不会变化的值 val ini原创 2017-01-13 15:44:59 · 248 阅读 · 0 评论 -
Scala学习整理[第十章 继承重载应用]<Programming In Scala>
第十章 组合与继承 本章用图形库的例子 ,展示scala的组合/继承能力 ,以及如何重载成员函数 ,如何利用多态等 .package SecondWithProgrammingInScalaimport scala.collection.mutable.ArrayBuffer/** * 隐含 * import java.lang._ //everything in the java原创 2017-01-04 15:43:02 · 260 阅读 · 0 评论 -
Scala学习整理[第十一-十三章 类型/特质和其应用/包]<Programming In Scala>
第十一章 类型结构Any公共基类 ,定义了基本的equals(==/!=的实现)/##(hashCode)/toString等方法AnyVal所有内建类型的父类 ,Byte,Short,Char,Int,Long,Float,Double,Boolean(对应JAVA基本类型),Unit(void) 类型间使用隐式转换 ,用implicit声明一个转换函数并import到目标点 ,遇到类型不匹原创 2017-01-04 16:15:30 · 322 阅读 · 0 评论 -
Scala学习整理[第十四章 测试]<Programming In Scala>
第十四章 断言和单元测试 Scala自身具有断言assert和ensuring语句 ,还可以引入Junit进行测试(JVM语言 完美融合) 同时还有ScalaTest(需要自己下载)工具包 ,提供了更多更详尽的测试方法 ,这里只是简单的应用package SecondWithProgrammingInScala/** * 断言和单元测试 * 基本的使用方法 */obje原创 2017-01-04 17:12:33 · 269 阅读 · 0 评论 -
Scala学习整理[第十五章 样本类和模式匹配]<Programming In Scala>
第十五章 样本类和模式匹配 使用模式匹配的语法 ,去简化scala中的一些操作方法 样本类是配合模式匹配 ,可以形成完整的/多元化的匹配规则 使用自己的理解完成了书中的例子 ,主要是为了熟悉递归/val等函数化的思想/** * 样本类case class和模式匹配pattern matching * [实验楼专题课程](https://www.shiyanlou.com原创 2017-01-05 16:56:29 · 288 阅读 · 0 评论 -
Scala学习整理[第一章 可伸缩的语言]<Programming In Scala>
##回顾之前通过实验楼的课程已经对scala语言有了初步的了解 ,做了一些运算/重载/函数式编程的小Demo .但是不少细节还是模糊的 ,刚好看到 **Programming In Scala** 这本书 ,是scala作者写的指导书 .原版实在是有难度 ,所以决定先看中文 .##开展计划就是跟着书的章节进行学习 ,结合之前的思考 ,细化理解 .为了方便书写运行代码(多写才是硬道理) ,所以就直接在Intel原创 2016-12-28 19:54:09 · 409 阅读 · 0 评论 -
Scala学习整理[第二章 入门Ⅰ]<Programming In Scala>
package SecondWithProgrammingInScala.Chapter2/** * 使用scala解释器 类似于脚本编程 * 定义的变量和函数会暂存在解释器中(就像解释器是一个大的object 写的代码会实时编译到里面) * 使用函数会将返回值显示在下一行 * $ scala */object Part1 {}/** * 变量定义 * va原创 2016-12-28 19:55:22 · 367 阅读 · 0 评论 -
Scala学习整理[第三章 入门Ⅱ]<Programming In Scala>
第三章 工具类/集合类package SecondWithProgrammingInScala.Chapter3import java.io.{File, PrintWriter}import scala.collection.mutable.ListBuffer/** * 使用类型参数化数组Array * 使用new实例化对象(class类) ,实例化时可以用值和类型使其参数化 * 定原创 2016-12-29 14:16:03 · 403 阅读 · 0 评论 -
Scala学习整理[第四-六章 使用Scala运行类/对象]<Programming In Scala>
第四章 类和对象 scala中将类/对象做了区分 - 类就是纯粹的类 ,也就是封装完整的”对象” ,他的方法应该是面向对象的 ,而不会出现静态的属性和方法(静态是公用的/全局的) - 对象则代表原来的单例对象 ,里面的属性和方法都是静态的(类似于java的static) - 使用class需要通过 new 实例化 - 使用object则可以直接调用(静态代码段/静态方法)原创 2016-12-29 15:33:26 · 385 阅读 · 0 评论 -
Scala学习整理[总结篇]<Programming In Scala>
第二课细读ScalaSecondWIthProgrammingInScala结合之前的学习和感想 ,顺序细读一遍Scala的书 ,整理为了方便查看和管理代码 ,书中包含的脚本/Scala解释器部分我都用mian函数去测试 ,方便记录当然Scala的解释器和脚本运行方式也是要去尝试一下的 ,也是很特别的任务完成利用这段空闲时间阅读完了Programming In Scala中文版的书 ,对Sc原创 2017-01-22 14:40:40 · 1560 阅读 · 0 评论