scala
文章平均质量分 56
T D Z
这个作者很懒,什么都没留下…
展开
-
scala----基础 方法 数组 映射 元组 集合 函数的定义
Scala语言的特点 Scala是一门以java虚拟机(JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的静态类型编程语言 1) Scala是一门多范式的编程语言, Scala支持面向对象和函数式编程 2) Scala源代码(.scala)会被编译成java字节码(.class) , 然后运行于JVM之上,并可以调用现有的Java类库,实现两种语言的无缝对接. 3) scala是源于java,也将函数式编程语言的特点融合到java中 ...原创 2020-12-13 23:18:43 · 249 阅读 · 0 评论 -
scala----常用方法 类的定义
常用方法 1. 聚合常用函数 sum求和 //底层是调用的foldLeft reduce聚合函数 arr.reduce(_+_) //底层调用的是reduceLeft reduceLeft _代表数据类型 fold(0)(_+_) 55 fold(100)(_+_) 155 fold(1000)(_+_) 1055 //第一个括号是指定了起始值 foldLeft(1)(_+_) //数据类型可以不相同 更加灵活 product相乘 2. mapValues //对值进行操作,再跟值拼接 ...原创 2020-12-15 19:44:08 · 449 阅读 · 0 评论 -
Scala----主构造 辅助构造 单例对象 apply 继承和实现特质 case calss和case object 模式匹配 OptionSomeNone
主构造器 package cn.doit.com.day03.demo2 //跟在类名的后面,跟类交织在一起,叫主造器 主构造会执行类定义中的所有语句 // 用val和var修饰的构造器参数,会成为这个类的成员变量 默认val修饰 会成为类的成员变量 class Student(val name:String , var age:Int) { val i = 100 //代码块 { try { println("hi ketty") } catch { ...原创 2020-12-16 23:46:23 · 408 阅读 · 0 评论 -
scala----自定义一个高级的List 实现reduce和flatMap方法 akka-rpc通信过程案例分析 maven项目初始化
自定义一个高级的List package cn.doit.com.day04.demo03; /* 1. 可以装任意类型的数据: 泛型 2. 可以实现链式调用 3. 具备list的add remove */ public class MyAdvListDemo { public static void main(String[] args) { MyAdvList<String> words = new MyAdvList<>(原创 2020-12-19 00:35:22 · 245 阅读 · 1 评论 -
scala---- Akka-RPC通信案例框架
RPC通信框架 1. 启动Master,然后内部会启动一个定时器,定期检测超时的worker,将超时的worker删除 2. Master接收到了worker发送的注册信息 , 将信息保存到内存,也可以持久化到磁盘或者zooker 3. 启动worker,跟Master简历网络连接,将自己的信息(id,内存,cpu等信息)注册给Master 4. Master向worker发送一个注册成功的消息 5. Worker接收到Master的消息后,然后启动一个定时器,向...原创 2020-12-19 00:40:22 · 168 阅读 · 1 评论 -
scala----方法与函数 柯里化和隐式参数 RichFile案例 Ordering和Ordered 视图和上下文界定 柯里化结合隐式
将方法生成一个新的函数 package cn.doit.com.day05.demo01 object MethodGenFunc { def m(x: Int): Int = x*x val f = (a: Int) => a * a def main(args: Array[String]): Unit = { val r1 = m(5) val r2 = f.apply(5) val arr = Array(1,2,3,4,5,6,7,8,9)原创 2020-12-19 23:45:26 · 222 阅读 · 1 评论