Scala学习笔记
wuqingdeqing
生如逐放 心有焰藏
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Scala学习笔记(四)——函数和闭包
4.1 本地函数类似Java中的私有方法,Scala的方式是把函数定义在别的函数之内。就好像本地变量那样,这种本地函数仅在包含它的代码块中可见。4.2 头等函数Scala的函数时头等函数。不仅可以定义和调用函数,还可以把它写成匿名的字面量,并把它作为值传递。4.3 占位符语法如果想让函数字面量更简洁,可以把下划线当做一个或更多参数的占位符,只要每个参数在函数字面量内只出现一次。...原创 2019-01-23 22:14:44 · 182 阅读 · 0 评论 -
Scala学习笔记(一)——入门
1.1 变量定义Scala有两种变量,val和var。val类似Java里的final变量。一旦初始化了,val就不能再被赋值。相反,var如同java里的非final变量,可以在它的生命周期中被多次赋值。1.2 函数定义如图: 1.3 用for和foreach做枚举打印每个命令行参数:agrs.foreach(arg => println(args))for...原创 2019-01-13 21:47:10 · 166 阅读 · 2 评论 -
Scala学习笔记(二)——入门二
2.1 类型化参数数组2.2 列表数组是可变的,列表是不可变的同类对象序列。操作符 ' :: ' 可以把新元素组合到现有列表的最前端,然后返回作为执行结果的新列表。用法如下:2.3 元组元组也是不可变的,但与列表不同,元组可以包含不同类型的元素。2.4 set和map对于set和map来说,同样有可变和不可变的,不过并非提供两种类型,而是通过类继承的差别把可...原创 2019-01-15 21:39:11 · 310 阅读 · 0 评论 -
Scala学习笔记(三)——类和对象
3.1 类、字段和方法类和字段与java类似。方法推荐尽量避免使用返回语句,尤其是多条返回语句。代之可以把每个方法当作是创建返回值的表达式。如下:3.2 分号推断除非以下情况的一种成立,否则行尾被认为有分号:1.由一个不能合法作为语句结尾的字结束。2.下一行开始不能作为语句开始。3.行结束与括号内部。3.3 Singleton对象单例对象用object关键字...原创 2019-01-15 22:39:27 · 643 阅读 · 0 评论 -
Scala学习笔记(五)——组合与继承
组合是指一个类持有另一个类的引用,借助被引用的类完成任务。继承是超类、子类的关系。5.1 抽象方法一个方法只要没有实现(即没有等号和方法体),它就是抽象的。与java不同,方法的声明不需要也不允许有抽象修饰符。拥有实现的方法被称为具体的方法。5.2 定义无参方法带有空括号的方法定义,如def height() : Int。推荐只要方法中没有参数并且方法仅能通过读取所包含对象的属性去...原创 2019-01-27 14:33:44 · 186 阅读 · 0 评论 -
Scala学习笔记(六)——Scala的层级
Scala里,每个类都继承自通用名为Any的超类。因为所有的类都是Any的子类,所以定义在Any中的方法就是共同的方法,它们可以被任何对象调用。6.1 类层级根类Any有两个子类:AnyVal和AnyRef。AnyVal是Scala里每个内建值的父类。有9个这样的值类:Byte、Short、Char、Int、Long、Float、Double、Boolean和Unit。其中前8个对应Jav...原创 2019-01-27 15:40:04 · 190 阅读 · 0 评论 -
Scala学习笔记(七)——特质
特质是Scala里代码复用的基础单元。特质封装了方法和字段的定义,并可以通过混入到类中重用它们。与类继承时每个类都只能继承唯一的超类不同,类可以混入任意多个特质。最常用到的两种方式:拓宽瘦接口为胖接口,定义可堆叠的改变。7.1 如何工作特质的定义除了使用关键字trait之外,与类定义无异。特质就像带有具体方法的Java接口。不过它可以做更多,比如声明字段和维持状态值。可以用特质的定义做...原创 2019-01-27 21:31:32 · 202 阅读 · 0 评论 -
Scala学习笔记(八)——包和引用
8.1 包Scala代码采用Java平台完整的包机制。8.2 引用Scala里,包和其成员可以用import子句来引用。Scala的import子句比Java更为灵活,在它们之间存在3点主要差异。Scala中引用可以:出现在任何地方。可以指的是对象及包。可以重命名或隐藏一些被引用的成员。8.3 隐式引用Scala为每个程序隐式地添加了一些引用。本质上,就好像每个...原创 2019-01-27 22:54:24 · 332 阅读 · 0 评论
分享