
Scala
RayfunC
一个懂艺术, 会写文的攻城狮
展开
-
Scala 隐式转换的小例子
object DateDemo { def main(args: Array[String]): Unit = { implicit def int2DateHelper(day:Int) = new DateHelper(day) //隐式转换 val ago = "ago" val later = "later" println(2.days(ago))...原创 2019-02-26 11:09:02 · 284 阅读 · 0 评论 -
Scala 优雅入门 (三) for 循环
Scala 中有 while, do while, for 循环这里拿常用的 for 循环来讲常用的 for 循环形式有两种前后闭合 (包括1 和 3)for(i <- 1 to 3){ // 这里的 1 to 3 也可以是一个集合 print(i + " ")}前闭后开(包括1 不包括 3)for(i <- 1 until 3) { pr...原创 2019-03-06 21:36:15 · 718 阅读 · 0 评论 -
Scala 优雅入门 (四) 函数式编程
Scala 中函数的定义def 函数名 ([参数名: 参数类型], ...)[[: 返回值类型] =] { 语句... //完成某个功能 return 返回值}方法转换函数main { //创建对象 val dog = new Dog println(dog.sum(10,20)) //方法转成函数 val f1 = d...原创 2019-03-09 16:41:25 · 497 阅读 · 0 评论 -
Scala 优雅入门 (五) 面向对象
语法Scala 语法中,类并不声明为public,所有这些类都具有公有可见性(即默认就是public)一个 Scala 源文件可以包含多个类, 每个类默认都是 publicScala 中声明一个属性,必须显式的初始化,然后根据初始化数据的类型自动推断,属性类型可以省略如果赋值为 null, 则一定要加类型,因为不加类型, 那么该属性的类型就是 Null 类型.如果在定义属性时...原创 2019-03-09 17:02:20 · 403 阅读 · 0 评论 -
Scala 优雅入门(一) 快速开始
本教程为总结笔记, 特点是简洁, 重点突出, 逻辑层级分明教程可能不会十分全面, 因为 Scala 中语法非常多, 这里只讲重点和经常使用的, 旨在快速掌握工作中需要的 80% 技能, 有如有错误, 欢迎指正~概述创始人马丁·奥德斯基(Martin Odersky)Scala 源代码(.scala) 会被编译成 Java 字节码(.class),然后运行于 JVM之上,...原创 2019-03-04 20:47:15 · 414 阅读 · 0 评论 -
Scala 优雅入门(二) 变量
语法1. var | val 变量名 [: 变量类型] = 变量值2. 声明变量时,类型可以省略(类型推断)3. 类型确定后,就不能修改,Scala 是强数据类型语言.4. 在声明/定义一个变量时,可以使用 var 或者 val 来修饰, var 修饰的变量可改变,val 修饰的变量不可改 (推荐使用val,线程安全,使用效率高)5. val 修饰的变量在编译后,等同于加上 f...原创 2019-03-04 21:03:47 · 361 阅读 · 0 评论 -
Scala 优雅入门 (六) 隐式转化
隐式函数自动类型转化隐式转换函数是以 implicit 关键字声明的带有单个参数的函数。这种函数将会自动应用,将值从一种类型转换为另一种类型, 隐式函数可以优雅的解决数据类型转换, 示例:implicit def f1(d:Double): Int = { //底层会生成一个方法 f1$1 d.toInt}val n1: Int = 3.4 //=> val n...原创 2019-03-18 21:35:08 · 146 阅读 · 0 评论 -
Scala 优雅入门 (七) 数据结构 - 数组
集合概念Scala 同时支持不可变集合和可变集合 两个主要的包: 不可变集合:scala.collection.immutable 可变集合: scala.collection.mutable Scala 默认采用不可变集合,对于几乎所有的集合类,Scala都同时提供了可变(mutable)和不可变(immutable)的版本 Scala 的集合有三大类:序列 Seq、集 Se...原创 2019-03-18 21:54:57 · 247 阅读 · 0 评论 -
Scala 优雅入门 (八) 数据结构 - 列表
ListScala 中的 List 和 Java List 不一样,在 Java 中 List 是一个接口,真正存放数据是 ArrayList,而 Scala 的 List 可以直接存放数据,就是一个 object,默认情况下 Scala 的 List 是不可变的,List 属于序列 Seqval List = scala.collection.immutable.List...原创 2019-03-25 21:05:53 · 300 阅读 · 0 评论