scala语法
scala语法
威少SOS
改变从这里开始
展开
-
scala之数组
目录一:Array二:ArrayBuffer三:for循环to和until遍历Array / ArrayBuffer四:相关数组功能点一:Array1.Scala 和 Java 的数据是相通的Scala数组的底层实际上是Java数组2.创建数组(1)val a = new Array[Int](10)(2)简写: Array.apply...原创 2019-04-27 23:02:15 · 2378 阅读 · 0 评论 -
scala之case匹配
目录1.actor 中的 receive{} 匹配普通字符2.case class在Actor中的使用3.try-catch中4.scala之模式匹配5.匹配疑问点1.actor 中的 receive{} 匹配普通字符例子:class HelloActor extends Actor { def act() { while (true) {...原创 2019-05-15 10:55:11 · 1897 阅读 · 0 评论 -
scala之object类
目录(1)object是什么(2)scala 中 object 对象的应用 1.作为伴生对象: object 2.继承抽象类,重写抽象类中的方法 3.object 定义 特殊的 apply 方法 4.object 实现 scala 中的 main 方法 5.object 实现枚举值(1)object是什么含义:相当于clas...原创 2019-05-15 11:31:36 · 8940 阅读 · 0 评论 -
scala之继承
目录0.继承1.override关键字2.super 关键字3.var 和 val 修饰的变量在继承时的区别4. 存在继承关系的类的匹配5.protected 的使用6.父子类中构造函数的复用7.匿名子类8.抽象类0.继承作用:增加代码的复用性 在需要新加公共的方法时,直接在父类中添加1.override关键字重写父类的方法...原创 2019-05-15 12:12:57 · 1626 阅读 · 0 评论 -
Java大战Scala
目录一:变量二:函数三:数据类型四:集合五:特殊符号六:逻辑构建元件七:极致的简写八:scala中的书写规范与java区别引言:在今年进行职业规划中,选择了数据分析这一块儿作为以后的工作方向结合更新效率,未来应用趋势,第一次主动的,自愿的选择了以Spark为核心的发展生态策略此文仅是本人于scala的基础学习之后,在结合java开发及工作经验做的汇...原创 2019-05-15 14:47:03 · 1458 阅读 · 0 评论 -
scala之目录大纲
引言:此为本博客scala学习大纲,方便总览及规整入门scala之变量scala的类scala之逻辑构建元件进阶scala之actorscala之case匹配scala之object类scala之Triatscala之高阶函数多态性scala之函数进阶scala之继承scala之类型参数scala之模式匹配scala之隐式转换Java和S...原创 2019-05-15 14:56:50 · 1790 阅读 · 0 评论 -
scala之类型参数
目录1.何为泛型2.泛型类3.泛型函数4.上边界Bounds,下边界Bounds5.View Bounds 限定类6.Context Bounds7.Manifest Context Bounds8.scala中的 协变,逆变9.Existential Type1.何为泛型定义:“参数化类型”顾名思义,就是将类型由原来的具体的类型参数化...原创 2019-05-08 01:30:25 · 1550 阅读 · 0 评论 -
Spark之Triat
目录一:基础知识1.定义抽象2.在Trait中定义抽象的 field 和 method 的方式3.定义具体4.Triat可以定义具体field5.定义抽象字段 field6.与之前的 object 和 继承的关系相比较二:高级特性1.Trait 的动态混入2.Trait 调用链3.在trait中覆盖抽象方法4.trait 的构造机制5...原创 2019-05-11 00:33:43 · 1618 阅读 · 0 评论 -
scala之函数进阶
目录一:scala的函数0.函数之于 java/scala地位1.scala中的函数2.匿名函数3.高阶函数(1)将函数当成参数进行传递(2)将函数作为返回值(3)是否有其它方式将函数变为返回值(4)匿名函数作为返回值的作用4.高阶函数的类型判断5.常用的高阶函数6.闭包7.SAM转换:待续8.Currying 函数(函数柯里化)9.sc...原创 2019-05-13 15:13:02 · 1524 阅读 · 0 评论 -
scala之逻辑构建元件
目录一:if-else二:输入,输出三:基本循环四:异常捕获一:if-else(1)存在返回值返回值就是最后运行的语句例子:var result = if(age>18) 1 else 0 ;(2)同样存在类型的判断(3)块儿引用:最后一个表达式 在scala中写多行表达式的方法: :paste (写 ) ...原创 2019-04-24 17:41:29 · 1381 阅读 · 0 评论 -
scala之函数入门
目录一:函数构成(1)带返回值(2)过程:(不带返回值)二:单行函数三:函数调用(1)递归调用函数时:需明确声明(2)默认参数(3)带名参数(4)变长参数(5)运算符与函数的相互转化(6)不传参的函数调用(7)apply函数(Object类型自带)一:函数构成(1)带返回值 def关键字 + 函数名 + 参数 + ...原创 2019-04-23 00:11:34 · 1441 阅读 · 0 评论 -
scala之Map集合
目录1.创建Map2.对集合操作3.zip:将Array集合相同位置的值进行合并为一个 Tuple1.创建Map(1)immutable.Mapval ages = Map("Leo" -> 30, "Jen" -> 25, "Jack" -> 23)(2)mutable.Map// 创建一个可变的Mapval ages = scal...原创 2019-05-03 23:40:50 · 3246 阅读 · 0 评论 -
scala的类
目录1.类的声明2.类的对象的封装3.构造函数1.类的声明包含类的对象包含类的方法例子:class HelloWorld { private var name = "leo" def sayHello() { print("Hello, " + name) } def getName = name}2.类的对象的封装(1)...原创 2019-05-05 00:28:18 · 1428 阅读 · 0 评论 -
scala之隐式转换
目录0、隐式转换定义1、函数隐式转换2、使用隐式转换加强现有类型3、隐式转换函数的作用域与导入4、隐式参数5、隐式转换的发生时机0、隐式转换定义实现方式:隐式转换函数接收的参数类型定义的对象时,会自动将其传入隐式转换函数本质:自动的调用你新增的“超级方法”作用:允许你手动指定,将某种类型的对象转换成其他类型的对象1、函数隐式转换结构: i...原创 2019-05-08 13:01:19 · 3193 阅读 · 0 评论 -
scala 之 集合
目录1、Scala的集合体系结构2.Range3.List4.LinkedList5.Set6.集合的函数式编程7.函数式编程综合案例:统计多个文本内的单词总数8.扩展问题1、Scala的集合体系结构整体:Iterable、Seq、Set、Map结构划分: Iterable是所有集合trait的根trai ...原创 2019-05-05 20:43:47 · 1423 阅读 · 0 评论 -
scala之actor入门
目录0、Acotr1、Actor的创建、启动和消息收发2、收发case class类型的消息3、Actor之间互相收发消息4、同步消息和Future(例子待合适情景验证)0、Acotr(1)java 和 scala 的关联:Scala的Actor类似于Java中的多线程编程(2)java 和 scala 的区别:1>Scala的Actor尽可能地避免...原创 2019-05-08 22:43:11 · 3215 阅读 · 0 评论 -
scala 模式儿匹配
目录0.scala模式匹配1.对变量的值进行模式匹配2.对类型进行模式匹配3.匹配 Array4.匹配List5.匹配(case class)6.Option与模式匹配7.java switch-case 与 scala match-case 的关联关系:8.传递单个变量与传递集合的方式比较0.scala模式匹配结构:变量 match { case...原创 2019-05-07 00:56:22 · 1403 阅读 · 0 评论 -
scala之变量
目录一:变量类型二:声明变量三:数据类型一:变量类型临时:var终态的:val理解:var -> variables :美 ['v?r??bl],val -> values n. 价值观念;价值标准 标准一般是不变的二:声明变量(1)构成:是否可变符号 变量名称 : 变量类型 = 值例子:var num:Int = 1;必...原创 2019-04-21 23:49:54 · 1382 阅读 · 0 评论 -
scala之高阶函数多态性
目录一:多态二:java 中的多态三:scala中的多态性一:多态是同一个行为具有多个不同表现形式或形态的能力就是同一个接口,使用不同的实例而执行不同操作二:java 中的多态方式一:重写:这个内容已经在上一章节详细讲过,就不再阐述,详细可访问:Java 重写(Override)与重载(Overload)。https://www.runoob.com/...原创 2019-05-13 17:26:50 · 1658 阅读 · 0 评论