![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Scala
你携秋水揽星河
ㅤㅤㅤ
展开
-
Scala中apply方法与unapply方法的使用
apply方法在一个类的伴生对象中定义apply方法, 在生成这个类的对象时, 就省去了new关键字unapply方法可以认为unapply方法是apply方法的反向操作,apply方法接受构造参数变成对象,而unapply方法接受一个对象,从中提取值unapply方法一般用于模式匹配, 也就是用于Scala提取器中.object Scala_apply_unapply { ...转载 2020-02-10 16:15:33 · 881 阅读 · 0 评论 -
Scala中集合里的化简reduce()方法和折叠fold()方法使用
reduce方法:数据减少, 不是结果变少, 将集合的数据经过逻辑处理后只保留一个结果, 具体的结果需要参考逻辑来实现object Demo{ def main(args: Array[String]): Unit = { val list = List(1,2,3,4) // reduce方法 val i = list.reduce((...原创 2020-02-08 17:42:14 · 1020 阅读 · 0 评论 -
Scala中List集合与Map集合的相互转换
List集合转换成Map集合object Demo{ def main(args: Array[String]): Unit = { // 创建一个List集合对象 val list: List[String] = List("dog", "tiger", "lion", "cat", "panther", "eagle") // 映射(转...原创 2020-02-07 18:01:30 · 6622 阅读 · 0 评论 -
Java和Scala的动态绑定机制
本文用java来概述动态绑定机制, Scala与java的动态绑定机制是相同的.先看下面的小例子:package zhang.shao;public class Demo1 { public static void main(String[] args) { Fu fu = new Zi(); System.out.println(fu....原创 2020-02-01 16:34:13 · 407 阅读 · 0 评论 -
Scala中的特质(trait)篇
一个类具有某种特质(特征),就意味着这个类满足了这个特质(特征)的所有要素,所以在使用时,也采用了extends关键字,如果有多个特质存在父类,那么需要采用with关键字连接➢没有父类class 类名 extends 特质1 with 特质2 with 特质3…➢有父类class 类名 extends 父类 with 特质1 with 特质2 with 特质3...原创 2019-12-31 11:43:12 · 217 阅读 · 0 评论 -
学习Scala:伴生对象和伴生类之间的关系(二)
孤立对象是只有一个object关键字修饰的对象,该对象会编译成两个class文件,一个是以孤立对象的名字命名的class, 一个是以孤立对象的名字后面加上一个$ 字符命名的class, 这个class又叫做虚构类, 源码中的孤立对象中的字段和方法,都被编译成以孤立对象的名字命名的class中静态方法, 这些静态方法都会访问单例的虚构类对象。虚构类市传统意义上的单例模式, 并且在类初始化的时候, 就...转载 2019-12-29 15:05:54 · 870 阅读 · 0 评论 -
学习Scala:伴生对象和伴生类之间的关系(一)
伴生类和伴生对象的区别和联系1.伴生类中主要编写非静态代码,伴生对象中主要编写静态代码,静态代码包括属性和方法.Scala中取消了static关键字,因此静态代码只能写到伴生对象中,伴生对象也是单例对象,多次修改其中的内容,后面的访问者获取到的则是最后一次修改之后的内容, 而不是初始化内容.2.伴生类中的属性和方法只能通过创建对象的方式来进行访问, 伴生对象中的属性和方法只能通过类名.的方式来...转载 2019-12-29 11:39:45 · 1605 阅读 · 0 评论 -
Java中访问权限和Scala访问权限的区别
目录: 问题记录 正文 问题记录问题概述:1.所有类都继承Object类,User类也是继承了Obect类. clone方法是Object类中的方法, 按理说User是可以用Object中的clone方法。为什么就报错了?正文何为访问权限?所谓的访问权限其实就是方法(属性)的提供者和方法(属性)的调用者之间的关系. 在进行方法和属性的访问权限...原创 2019-12-27 11:53:16 · 405 阅读 · 0 评论 -
Scala语言之匿名函数以及简化写法来改善代码
代码一:def f1(f : ()=>Unit) : Unit = { f()}f1(()=>{println("hello scala")})输出结果为: hello scala代码二:当匿名函数中有参数时:def f1(f : (Int)=>Int) : Int = { f(10)}println(f1((x: Int) =>{...原创 2019-12-26 12:59:15 · 467 阅读 · 1 评论