
Scala
文章平均质量分 51
不断学习的克里斯
人生就是不断学习的过程
展开
-
【Scala】match——模式匹配总结
Scala 中的模式匹配类似于 Java 中的 switch 语法 模式匹配语法中,采用 match 关键字声明,每个分支采用 case 关键字进行声明,当需要匹 配时,会从第一个 case 分支开始,如果匹配成功,那么执行对应的逻辑代码,如果匹配不成功,继续执行下一个分支进行判断。 如果所有 case 都不匹配,那么会执行 case _分支, 类似于 Java 中 default 语句。原创 2022-01-19 20:35:21 · 3203 阅读 · 0 评论 -
【Scala】集合高级计算——过滤、map、扁平化、分组、reduce、折叠
1)过滤 遍历一个集合并从中获取满足指定条件的元素组成一个新的集合 (2)转化/映射(map) 将集合中的每一个元素映射到某一个函数 (3)扁平化 (4)扁平化+映射 注:flatMap 相当于先进行 map 操作,在进行 flatten 操作集合中的每个元素的子元素映射到某个函数并返回新集合 (5)分组(group) 按照指定的规则对集合的元素进行分组 (6)简化(归约) (7)折叠原创 2022-01-19 19:03:59 · 570 阅读 · 0 评论 -
【Scala】集合总结(二)——Array、List、Set、Map、Tuple的增、删、改
一、Scala集合简介 (1)Scala 的集合有三大类:序列 Seq、集 Set、映射 Map,所有的集合都扩展自 Iterable 特质。 (2)对于几乎所有的集合类,Scala 都同时提供了可变和不可变的版本,分别位于以下两 个包: 不可变集合:scala.collection.immutable 可变集合: scala.collection.mutable (3)Scala 不可变集合,就是指该集合对象不可修改,每次修改就会返回一个新对象,而 不会对原对象进行修改。类似于 ja.原创 2022-01-19 17:08:42 · 743 阅读 · 0 评论 -
【Scala】集合总结(一)——Array、List、Set、Map、Tuple的创建、访问、遍历方法
一、Scala集合简介 (1)Scala 的集合有三大类:序列 Seq、集 Set、映射 Map,所有的集合都扩展自 Iterable 特质。 (2)对于几乎所有的集合类,Scala 都同时提供了可变和不可变的版本,分别位于以下两 个包: 不可变集合:scala.collection.immutable 可变集合: scala.collection.mutable (3)Scala 不可变集合,就是指该集合对象不可修改,每次修改就会返回一个新对象,而 不会对原对象进行修改。类原创 2022-01-19 16:21:17 · 1109 阅读 · 0 评论 -
【Scala】伴生类与伴生对象
Scala语言是完全面向对象的语言,所以并没有静态的操作(即在Scala中没有静态的概念) 但是为了能够和Java语言交互(因为Java中有静态概念),就产生了一种特殊的对象 来模拟类对象,该对象为单例对象。若单例对象名与类名一致,则称该单例对象这个类的伴 生对象,这个类的所有“静态”内容都可以放置在它的伴生对象中声明。 一、语法分析 //(1)伴生对象 object Person { var country: String = "China" } //(...原创 2022-01-19 15:16:02 · 444 阅读 · 0 评论 -
【Scala】总结匿名函数
定义 没有名字的函数就是匿名函数。 (x:Int)=>{函数体} x:表示输入参数类型;Int:表示输入参数类型;函数体:表示具体代码逻辑 匿名函数至简原则 (1)参数的类型可以省略,会根据形参进行自动的推导 (2)类型省略之后,发现只有一个参数,则圆括号可以省略;其他情况:没有参数和参 数超过 1 的永远不能省略圆括号。 (3)匿名函数如果只有一行,则大括号也可以省略 (4)如果参数只出现一次,则参数省略且后面参数可以用_代替 情况分析 1、传递的函数..原创 2022-01-19 14:46:13 · 413 阅读 · 0 评论 -
【Scala】函数至简原则、高阶函数
一、函数至简原则 (1)return 可以省略,Scala 会使用函数体的最后一行代码作为返回值 def f1( s : String ): String = { s + " chris " } (2)如果函数体只有一行代码,可以省略花括号 def f2(s:String):String = s + " Chris " (3)返回值类型如果能够推断出来,那么可以省略(:和返回值类型一起省略) def f3( s : String ) = s + " chris " (原创 2022-01-19 14:29:58 · 522 阅读 · 0 评论