![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
scala
afewnotes
这个作者很懒,什么都没留下…
展开
-
Scala Types 1
在 Scala 中所有值都有一种对应的类型单例类型形式:value.type,返回类型 value / null场景1:链式API调用时的类型指定 class Super { def m1(t: Int) = {println(t); this} def m2(t: Int) = {println(t); this} } // 正常打印 new Su...原创 2019-10-29 20:51:48 · 359 阅读 · 0 评论 -
Scala Basis
基础Scala 中数据类型也是 class7 种数值类型: Byte, Char, Short, Int, Long, Float, and DoubleBoolean 类型原始类型与 class 类型无区别,可在数字上调用方法(隐式转换为对应的方法调用,如对 Int 操作转为 RichInt 的方法调用等)1.toString()1.to(10) // Range(1,2...原创 2019-09-28 23:42:26 · 357 阅读 · 0 评论 -
Scala Data Structure
ArraysArray 固定长度;ArrayBuffer 可变长度arr.toBuffer, buf.toArray初始化是不要使用 new使用 () 访问元素使用 for (elem 90, "c" -> 95) 创建的默认为 immutable 的 hash map可变的 Map 需要显式指定 scala.collection.mutable.Map创建空的 Map...原创 2019-09-29 00:02:43 · 923 阅读 · 0 评论 -
Scala Class etc.
Classes一个源文件可包含多个类,每个类默认都是 public类字段必须初始化,编译后默认是 private,自动生成 public 的 getter/setter ;Person 示例private 字段,生成 private 的 getter/setterval 字段,只生成 getterprivate[this] 字段,不生成 getter/setter自定义 get...原创 2019-09-29 21:24:48 · 266 阅读 · 0 评论 -
Scala Class etc. 2
Higher-Order Functionsdef 定义的是方法,而不是函数函数可作为变量存在,可直接调用,也可作为值传递给其他函数_ 后缀将普通方法变为函数: ceil _根据上下文编译器可以自动将方法转换为函数,也可省略 _ 后缀高阶函数,接收函数的函数参数类型推导匿名函数传递给其他函数或方法时,如果一直到参数类型,则可省略匿名函数的参数类型,可自动推导类型参数只有...原创 2019-09-30 21:28:59 · 364 阅读 · 0 评论 -
Scala Operators, File & RegExp
OperatorsThread.yield() 反引号除了用于命名标识符,还可以在调用方法时避免冲突(yield 为 Scala 关键字,但也是 Thread 的方法)中缀运算符(infix operators),实际是带两个参数的方法,定义时跟普通方法一样;a to b 实际是 a.to(b)一元运算符(unary operators) , -, !, ~四个可当做前缀运算符使用...原创 2019-10-01 09:50:44 · 878 阅读 · 0 评论 -
Scala Collection Method
接收一元函数map 转换元素,主要应用于不可变集合 (1 to 10).map(i => i * i) (1 to 10).flatMap(i => (1 to i).map(j => i * j))transform 与 map 相同,不过用于可变集合,直接转换 ArrayBuffer("Peter", "Paul", "M...原创 2019-10-02 11:06:44 · 840 阅读 · 0 评论 -
Scala XML
XML直接在代码中使用 XML 字面量 val doc: Elem = <html><head><title>Test</title></head><body>test</body></html> val items: NodeBuffer = <li>item1<...原创 2019-10-07 08:38:16 · 953 阅读 · 0 评论 -
Scala Future
Futurescala.concurrent.Future 异步执行代码块 import java.time._ import scala.concurrent._ import ExecutionContext.Implicits.global // 全局线程池 Future { Thread.sleep(10000) ...原创 2019-10-07 08:46:02 · 406 阅读 · 0 评论 -
Scala Type Parameters 1
类型参数表现形式:在名称后面以方括号表示, Array[T]何处使用class 中,用于定义变量、入参、返回值 class Pair[T, S](val first: T, val second: S) // scala 可自动推断具体的类型 val p = new Pair(42, "String") // Pair[Int, String]...原创 2019-10-08 23:30:49 · 1307 阅读 · 0 评论 -
Scala Type Parameters 2
类型关系Scala 支持在泛型类上使用型变注释,用来表示复杂类型、组合类型的子类型关系间的相关性协变 T,变化方向相同,通常用在生产 > 假设 `A extends T`, 对于 `Clazz[ T]`,则 `Clazz[A]` 也可看做 `Clazz[T]` // 官网示例 abstract class Animal { def...原创 2019-10-09 23:16:43 · 918 阅读 · 0 评论