摘要:
Scala的Actor类似于Java中的多线程编程。但是不同的是,Scala的Actor提供的模型与多线程有所不同。Scala的Actor尽可能地避免锁和共享状态,从而避免多线程并发时出现资源争用的情况,进而提升多线程编程的性能。此外,Scala Actor的这种模型还可以避免死锁等一系列传统多线程 阅读全文
摘要:
Scala提供的隐式转换和隐式参数功能,是非常有特色的功能。是Java等编程语言所没有的功能。它可以允许你手动指定,将某种类型的对象转换成其他类型的对象。通过这些功能,可以实现非常强大,而且特殊的功能。 Scala的隐式转换,其实最核心的就是定义隐式转换函数,即implicit conversion 阅读全文
摘要:
类型参数是什么? 类型参数其实就类似于Java中的泛型。先说说Java中的泛型是什么,比如我们有List a = new ArrayList(),接着a.add(1),没问题,a.add("2"),然后我们a.get(1) == 2,对不对?肯定不对了,a.get(1)获取的其实是个String—— 阅读全文
摘要:
模式匹配 在模式匹配中使用if守卫 在模式匹配中进行变量赋值 对类型进行模式匹配 对Array和List进行模式匹配 case class与模式匹配 Option与模式匹配 阅读全文
摘要:
Scala的集合体系结构 List LinkedList Set 集合的函数式编程 函数式编程综合案例:统计多个文本内的单词总数 阅读全文
摘要:
将函数赋值给变量 匿名函数 高阶函数 高阶函数的类型推断 Scala的常用高阶函数 闭包 SAM转换 Currying函数 return 阅读全文
摘要:
将trait作为接口使用 在Trait中定义具体方法 在Trait中定义具体字段 在Trait中定义抽象字段 为实例混入trait trait调用链 在trait中覆盖抽象方法 混合使用trait的具体方法和抽象方法 trait的构造机制 trait field的初始化 trait继承class 阅读全文
摘要:
extends override和super override field isInstanceOf和asInstanceOf getClass和classOf 使用模式匹配进行类型判断 protected 调用父类的constructor 匿名内部类 抽象类 抽象field 阅读全文
摘要:
object 伴生对象 让object继承抽象类 apply方法 main方法 main方法 用object来实现枚举功能 阅读全文
摘要:
定义一个简单的类 getter与setter 自定义getter与setter 仅暴露field的getter方法 private[this]的使用 Java风格的getter和setter方法 辅助constructor 主constructor 内部类 阅读全文
摘要:
创建Map 访问Map的元素 修改Map的元素 遍历Map SortedMap和LinkedHashMap Map的元素类型—Tuple 阅读全文