![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Scala
ysjh0014
QQ:3463446481
展开
-
Scala语言简介
1.Scala是什么Scala是一种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数式编程的各种特性,Scala运行于Java平台(Java虚拟机),并兼容现有的Java程序2.为什么要学Scala 1)优雅:这是框架设计师第一个要考虑的问题,框架的用户是应用开发程序员,API是否优雅直接影响用户体验 2)速度快:Scala语言表达能力强,一行开发速度快,代码抵...原创 2018-09-26 16:55:26 · 1708 阅读 · 1 评论 -
Scala模式匹配 match case
1.匹配字符串/类型/守卫val arr = Array("YoshizawaAkiho", "YuiHatano", "AoiSola")val i = Random.nextInt(arr.length)println(i)val name = arr(i)println(name)name match {case "YoshizawaAkiho" => p...原创 2018-10-05 16:39:32 · 3745 阅读 · 0 评论 -
Scala面向对象二
1.抽象类在Scala 中,使用 abstract 修饰的类称为抽象类, 在抽象类中可以定义属性、未实现的方法和具体实现的方法abstract class Animal {println("Animal's constructor ....")** 定义一个 name 属性val name: String = "animal"** 没有任何实现的方法 def slee...原创 2018-10-05 16:28:13 · 132 阅读 · 0 评论 -
Scala面向对象一
1.Scala单例对象在 Scala 中,是没有 static 这个东西的,但是它也为我们提供了单例模式的实现方法,那就是使用关键字 object, object 对象不能带参数object test { def test1(a: String) = { println(a) }}object Test2 { def main(args: Array[Str...原创 2018-10-05 16:18:49 · 111 阅读 · 0 评论 -
Scala集合的使用二
1.集合常用的方法map, flatten, flatMap,filter, sorted, sortBy,sortWith, groupedfold(折叠),foldLeft, foldRight,reduce, reduceLeft, aggregate,union,intersect(交集),diff(差集), head, tail, zip,mkString, foreach,...原创 2018-10-05 12:06:26 · 133 阅读 · 0 评论 -
Scala集合的使用一
在Scala中,集合分为可变集合(mutable)和不可变集合(immutable)可变集合: 长度可变,内容可变不可变集合: 长度不可变,内容不可变示例:不可变集合: 可变集合:1.定长数组与变长数组Array数组中的内容都可变: 分为长度可变数组(ArrayBuffer)和长度不可变数组(Array)2.Seq序列不可变的序列示例:ob...原创 2018-10-05 12:03:22 · 1093 阅读 · 0 评论 -
CMD命令行模式下使用Scala进行词频统计
1.首先创建一个数组2.对这个数组进行flatMap操作(等于先 map操作后进行 flatten 操作)3.要进行统计就需要进行分组 可以看出分组之后变为了Map集合,其中都是key-value对4.将value取出来并统计其长度5.将结果转换为List集合6.进行排序sortBy(x=>-x._2)为降序...原创 2018-10-04 20:51:15 · 1051 阅读 · 1 评论 -
Scala基础语法五
1.柯里化柯里化(Currying)指的是将原来接受两个参数的函数变成新的接受一个参数的函数的过程,新的函数返回一个以原有第二个参数为参数的函数示例:定义一个方法def add(x: Int, y: Int) = x + y调用这个方法应该是add(1,2)现在将这个方法变形def add(x:Int)(y:Int) = x + y这时候调用就是add(1)(2...原创 2018-10-04 20:19:17 · 117 阅读 · 0 评论 -
Scala基础语法四
1.可变参数函数 def ss(a: Int*) = { for (p <- a) { println(p) } }可变参数一般跟在所有参数的最后2.默认参数值函数 def add(a: Int = 1, b: Int = 7): Unit = { println(s"a + b = ${a + b}") }默认参数值函数...原创 2018-10-04 19:08:34 · 203 阅读 · 0 评论 -
Scala基础语法三
1.方法的定义与调用 1)方法的定义与调用def 方法名(参数:参数类型,。。。。) :方法返回值类型 = {方法体}当然上边的方法定义的方式中有许多是可以省略的,例如: 省略方法的返回值类型注意: 方法的返回值类型可以不写,编译器可以自动推断出来,但是对于递归函数,必须指定返回 省略传入方法中的参数 注意: 如上图中的例...原创 2018-10-04 17:03:03 · 174 阅读 · 0 评论 -
Scala基础语法二
1.条件表达式var test = if (age > 10) "ysjh" else "ys"print("test=" + test)输出结果:这里将条件表达式的返回值赋给了变量test,如果出现没有返回值的情况,即不符合条件表达式的条件,则编译器默认返回Unit,如果有多行数据,最后一行的值作为条件表达式的返回值if....els...原创 2018-10-04 11:24:24 · 130 阅读 · 0 评论 -
Scala基础语法一
1.数据类型Scala的数据类型和Java差不多有 7 种数值类型 Byte、Char、Short、Int、Long、Float 和 Double(无包装类型)和 Boolean、Unit 类型Scala的继承层级如图所示:这里的Any相当于Java中的Object 注意: Unit 表示无值,和Java中的void 等同,用作不返回任何结果的方法的结果类型...原创 2018-10-04 08:51:34 · 192 阅读 · 0 评论 -
windows下Scala开发环境的搭建
1.Java JDK的下载因为Scala语言是运行下JVM上的,所以Java JDK必须有,并且是1.8及其以上版本2.Scala SDK的下载Scala SDK下载地址: https://www.scala-lang.org/download/all.html这里在windows下就下载.msi版本的,可以按照提示安装即可,不用手动设置环境变量如果下载windows下的...原创 2018-09-29 13:18:41 · 1134 阅读 · 0 评论