12 2018 档案
摘要:```
class Rational(n: Int, d: Int) { require(d != 0) private val g: Int = gcd(n, d) val number: Int = n / g val denom: Int = d / g def this(n: Int) = this(n, 1) override def toString: S...
阅读全文
摘要:本地函数 可以在方法内定义方法,这种方法叫本地函数,本地函数可以直接访问父函数的参数 头等函数 Scala的函数时头等函数,不仅可以定义和调用,还可以写成匿名字面量,并把它们当成值传递,如 占位符语法 如果每个参数在函数字面量内仅出现一次,可以使用下划线当做一个或更多参数的占位符 部分应用函数
阅读全文
摘要:前言 Scala中内建控制循环包括if、while、for、try、match和函数调用。 if和while与java类似,不做介绍。 for 基础用法 match match还可以产生值
阅读全文
摘要:当scala中类或者对象有一个主要用途的时候,apply方法就是一个很好地语法糖。请看下面一个简单的例子: 定义了一个Foo类,并且在这个类中,有一个伴生对象Foo,里面定义了apply方法。 有了这个apply方法以后,我们在调用这个Foo类的时候,用函数的方式来调用: 我们Foo("Hello"
阅读全文
摘要:== Scala中==与java中不同,它是比较值是否相等的,无论比较对象是否是相同类型 equals 同类型 与==作用相同,都是比较值是否相同 不同类型 返回false,如 引用比较 scala中提供了比较引用的方法,分别是eq和ne
阅读全文
摘要:object object 是只有一个实例的类。它的定义与Java中的class类似,如: 其中有main方法,它与脚本运行方式不同,需要先编译(scalac),后运行,与java类似: App 运行object,除了使用main方法,还可以直接继承trait(类似于Java中的接口) App: 伴
阅读全文