Scala
焦焦^_^
这个作者很懒,什么都没留下…
展开
-
Scala:基础语法
声明变量 1. 声明val变量:可以声明val变量来存放表达式的计算结果 val result = 1 + 1 但是常量声明后,是无法改变它的值的,例如,result = 1,会返回error: reassignment to val的错误信息 2. 声明var变量:如果要声明值可以改变的引用,可以使用var变量。 var myresult = 1,myresult = 2 在scala程序...原创 2018-11-21 14:17:06 · 228 阅读 · 0 评论 -
Scala:Trait
将trait作为接口使用 类可以使用extends关键字继承trait,注意,这里不是implement,而是extends,在scala中没有implement的概念,无论继承类还是trait,统一都是extends。 类继承trait后,必须实现其中的抽象方法,实现时不需要使用override关键字 trait SayHello { def sayHello(name:String) }...原创 2018-11-23 18:12:45 · 235 阅读 · 0 评论 -
Scala:面向对象
类 类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。类是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。 class Point(xc: Int, yc: Int) { var x: Int = xc var y: Int = yc def move(dx: Int, dy: Int) { x...原创 2018-11-22 18:07:55 · 144 阅读 · 0 评论 -
Scala:隐式转换与隐式参数
Scala的隐式转换,其实最核心的就是定义隐式转换函数,即implicit conversion function。定义的隐式转换函数,只要在编写的程序内引入,就会被Scala自动使用。Scala会根据隐式转换函数的签名,在程序中使用到隐式转换函数接收的参数类型定义的对象时,会自动将其传入隐式转换函数,转换为另外一种类型的对象并返回。这就是“隐式转换”。 隐式转换 要实现隐式转换,只要程序可见的范...原创 2018-12-04 14:24:09 · 135 阅读 · 0 评论 -
Scala:函数式编程
将函数赋值给变量 Scala中的函数是一等公民,可以独立定义,独立存在,而且可以直接将函数作为值赋值给变量 def sayHello(name:String){println("Hello," + name)} def sayHelloFunc = sayHello _ sayHelloFunc("LO") Scala的语法规定,将函数赋值给变量时,必须原创 2018-11-30 15:24:05 · 146 阅读 · 0 评论 -
Scala:模式匹配
模式匹配 Scala是没有Java中的switch case语法的,相对应的,Scala提供了更加强大的match case语法,即模式匹配,类替代switch case,match case也被称为模式匹配。 match case的语法如下:变量 match { case 值 => 代码 }。此外,match case中,只要一个case分支满足并处理了,就不会继续判断下一个case分支了...原创 2018-12-03 15:44:08 · 131 阅读 · 0 评论 -
Scala:类型参数
泛型类原创 2018-12-03 17:49:23 · 159 阅读 · 0 评论 -
Scala:高级特性
跳出循环语句 使用boolean控制变量 var flag = true var res = 0 for (i <- 0 until 10 if flag) { res += i if (i == 4) flag = false } 在嵌套函数中使用return def add_outer() = { var res = 0 def add_inner() { ...原创 2019-06-05 10:16:20 · 222 阅读 · 0 评论