05 2021 档案

摘要:seq,set,map特点 1.Seq,是一组有序的元素。2.Set,是一组没有重复元素的集合。3.Map,是一组k-v对。 Array array(不可变,可变);数据有序,可以放重复,不限制类型 | Array, ArrayBuffer Array ArrayBuffer 定义空:val arr 阅读全文
posted @ 2021-05-28 21:22 亚洲哈登 阅读(71) 评论(0) 推荐(0)
摘要:Scala Builder 引申:scala Builder设计模式 场景 1)当对象具有大量可选参数时。 2)当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。 3)当构造过程必须允许被构造的对象有不同的表示时。 map map源码 //第一个参数,传入一个函数,第二个参数为隐式 阅读全文
posted @ 2021-05-28 21:18 亚洲哈登 阅读(139) 评论(0) 推荐(0)
摘要:map源码 //第一个参数传入一个函数,第二个参数为隐式参数,返回值和集合的类型一致都是B def map[B, That](f: A => B)(implicit bf: CanBuildFrom[Repr, B, That]): That = { //方法内部定义builder方法 def bu 阅读全文
posted @ 2021-05-25 19:30 亚洲哈登 阅读(121) 评论(0) 推荐(0)
摘要:集合介绍 Scala的集合有三大类:序列Seq、集Set、映射Map,所有的集合都扩展自Iterable特质。对于几乎所有的集合类,Scala都同时提供了可变和不可变的版本。 集合可变,不可变的区别 Scala默认提供的集合都是不可变。 不可变:增删改 都会返回有个新数组 可变:可增删改 可变: s 阅读全文
posted @ 2021-05-23 21:22 亚洲哈登 阅读(174) 评论(0) 推荐(0)
摘要:抽象类,方法,属性(不完整) Scala将一个不完整的类称之为抽象类 abstract class Person { } Scala中一个方法只有声明而没有实现,那么是抽象方法 // 子类重写父类的抽象方法,直接补充完整即可// 子类重写父类的完整方法,必须添加override关键字// 开发时,推 阅读全文
posted @ 2021-05-23 18:51 亚洲哈登 阅读(118) 评论(0) 推荐(0)
摘要:类基本语法:Scala中一个源文件中可以声明多个公共类 // 声明类:访问权限 class 类名 { 类主体内容 } class User { // 类的主体内容 } // 对象:new 类名(参数列表) new User() 类的属性 :在编译时,编译器会将变量编译为类的(私有的)属性,同时提供了 阅读全文
posted @ 2021-05-21 19:52 亚洲哈登 阅读(320) 评论(0) 推荐(0)
摘要:下划线的作用 1. 声明变量,但是不能访问 val _ = "AsianHarden" 2. 将函数作为整体使用 val f = fun _ 3. 使用import语法时,下划线可以代替星号 import java.util._ 4. 使用import语法时,下划线可以隐藏类 import java 阅读全文
posted @ 2021-05-21 18:47 亚洲哈登 阅读(101) 评论(0) 推荐(0)
摘要:集合&数组的区别 1)数组的长度是固定的。集合的长度是可变的。 2)数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致 集合分类 Collection和Map,Collection 表示一组对象,Map表示一组映射关系或键值对。 集合Collectio 阅读全文
posted @ 2021-05-20 15:52 亚洲哈登 阅读(56) 评论(0) 推荐(0)
摘要:Scala语言类型(同java) 静态,强,类型推断, 弱类型:(javascripte) > "1"+2 '12' 强类型:(java,scala,python) >>> "1"+2 TypeError: cannot concatenate 'str' and 'int' objects 动态类 阅读全文
posted @ 2021-05-17 20:35 亚洲哈登 阅读(68) 评论(0) 推荐(0)