随笔分类 -  bdv015-scala

上一页 1 2 3 4 下一页

|NO.Z.00057|——————————|BigDataEnd|——|Hadoop&Scala.V05|——|Scala.v05|模式匹配和样例类|闭包|
摘要:一、闭包 ### 闭包 ~~~ 闭包是一种函数,一种比较特殊的函数,它和普通的函数有很大区别: ~~~ # 普通的函数 val addMore1 = (x: Int) => x + 10 ~~~ # 外部变量,也称为自由变量 var more = 10 ~~~ # 闭包 val addMore2 = 阅读全文

posted @ 2022-04-11 20:01 yanqi_vip 阅读(14) 评论(0) 推荐(0) 编辑

|NO.Z.00058|——————————|BigDataEnd|——|Hadoop&Scala.V06|——|Scala.v06|模式匹配和样例类|柯里化|
摘要:一、柯里化 ### 柯里化 ~~~ 函数编程中,接收多个参数的函数都可以转化为接收单个参数的函数, ~~~ 这个转化过程就叫柯里化(Currying)。 ~~~ Scala中,柯里化函数的定义形式和普通函数类似, ~~~ 区别在于柯里化函数拥有多组参数列表,每组参数用小括号括起来。 ~~~ Scal 阅读全文

posted @ 2022-04-11 20:01 yanqi_vip 阅读(7) 评论(0) 推荐(0) 编辑

|NO.Z.00059|——————————|BigDataEnd|——|Hadoop&Scala.V07|——|Scala.v07|模式匹配和样例类|部分应用函数|
摘要:一、部分应用函数 ### 部分应用行数 ~~~ 部分应用函数(Partial Applied Function)也叫偏应用函数, ~~~ 与偏函数从名称上看非常接近,但二者之间却有天壤之别。 ~~~ 部分应用函数是指缺少部分(甚至全部)参数的函数。 ~~~ 如果一个函数有n个参数, 而为其提供少于n 阅读全文

posted @ 2022-04-11 20:01 yanqi_vip 阅读(14) 评论(0) 推荐(0) 编辑

|NO.Z.00056|——————————|BigDataEnd|——|Hadoop&Scala.V04|——|Scala.v04|模式匹配和样例类|高阶函数|
摘要:一、高阶函数 ### 高阶函数 ~~~ 高阶函数:接收一个或多个函数作为输入 或 输出一个函数。 ~~~ 函数的参数可以是变量,而函数又可以赋值给变量, ~~~ 由于函数和变量地位一样,所以函数参数也可以是函数; ~~~ 常用的高阶函数:map、reduce、flatMap、foreach、filt 阅读全文

posted @ 2022-04-11 20:00 yanqi_vip 阅读(10) 评论(0) 推荐(0) 编辑

|NO.Z.00054|——————————|BigDataEnd|——|Hadoop&Scala.V02|——|Scala.v02|模式匹配和样例类|函数方法区别|
摘要:一、函数与方法的区别 ### 函数与方法的区别 scala> def addm(x: Int, y: Int): Int = x + y addm: (x: Int, y: Int)Int scala> val addf = (x: Int, y: Int) => x + y addf: (Int, 阅读全文

posted @ 2022-04-11 19:59 yanqi_vip 阅读(18) 评论(0) 推荐(0) 编辑

|NO.Z.00055|——————————|BigDataEnd|——|Hadoop&Scala.V03|——|Scala.v03|模式匹配和样例类|匿名函数|占位符|
摘要:一、匿名函数与占位符 ### 匿名函数与占位符 ~~~ 函数没有名字就是匿名函数; ~~~ 匿名函数,又被称为 Lambda 表达式。 Lambda表达式的形式如下: ~~~ (参数名1: 类型1, 参数名2: 类型2, ... ...) => 函数体 ### 编程示例 ~~~ 定义匿名函数 sca 阅读全文

posted @ 2022-04-11 19:59 yanqi_vip 阅读(17) 评论(0) 推荐(0) 编辑

|NO.Z.00053|——————————|BigDataEnd|——|Hadoop&Scala.V01|——|Scala.v01|模式匹配和样例类|函数字面量|函数定义|
摘要:一、函数字面量及函数的定义 ### 函数字面量及函数的定义 ~~~ Scala中函数为头等公民,不仅可以定义一个函数然后调用它, ~~~ 还可以写一个未命名的函数字面量,然后可以把它当成一个值传递到其它函数或是赋值给其它变量。 ~~~ 函数字面量体现了函数式编程的核心理念。 ~~~ 字面量包括整数字 阅读全文

posted @ 2022-04-11 19:58 yanqi_vip 阅读(14) 评论(0) 推荐(0) 编辑

|NO.Z.00052|——————————|BigDataEnd|——————————————————————————————————————
摘要:NO: Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of 阅读全文

posted @ 2022-04-11 19:58 yanqi_vip 阅读(2) 评论(0) 推荐(0) 编辑

|NO.Z.00050|——————————|BigDataEnd|——|Hadoop&Scala.V06|——|Scala.v06|模式匹配和样例类|样例类|
摘要:一、样例类 ### 样例类 ~~~ # case class样例类是Scala中特殊的类。当声明样例类时,以下事情会自动发生: ~~~ 主构造函数接收的参数通常不需要显式使用var或val修饰,Scala会自动使用val修饰 ~~~ 自动为样例类定义了伴生对象,并提供apply方法,不用new关键字 阅读全文

posted @ 2022-04-11 19:57 yanqi_vip 阅读(19) 评论(0) 推荐(0) 编辑

|NO.Z.00051|——————————|BigDataEnd|——|Hadoop&Scala.V07|——|Scala.v07|模式匹配和样例类|Option|模式匹配|
摘要:一、Option与模式匹配 ### Option与模式匹配 ~~~ Scala Option选项类型用来表示一个值是可选的,有值或无值。 ~~~ Option[T] 是一个类型为 T 的可选值的容器,可以通过get()函数获取Option的值。如果值存在, ~~~ Option[T] 就是一个 So 阅读全文

posted @ 2022-04-11 19:57 yanqi_vip 阅读(22) 评论(0) 推荐(0) 编辑

|NO.Z.00049|——————————|BigDataEnd|——|Hadoop&Scala.V05|——|Scala.v05|模式匹配和样例类|匹配数组|元组集合|
摘要:一、匹配数组、元组、集合 ### 编程示例 def main(args: Array[String]): Unit = { val arr = Array(0, 3, 5) //对Array数组进行模式匹配,分别匹配: //带有指定个数元素的数组、带有指定元素的数组、以某元素开头的数组 arr ma 阅读全文

posted @ 2022-04-11 19:56 yanqi_vip 阅读(29) 评论(0) 推荐(0) 编辑

|NO.Z.00047|——————————|BigDataEnd|——|Hadoop&Scala.V03|——|Scala.v03|模式匹配和样例类|守卫式匹配|
摘要:一、守卫式匹配 ### 编程示例 // 所谓守卫就是添加if语句 object MatchDemo { def main(args: Array[String]): Unit = { //守卫式 val character = '*' val num = character match { case 阅读全文

posted @ 2022-04-11 19:55 yanqi_vip 阅读(8) 评论(0) 推荐(0) 编辑

|NO.Z.00048|——————————|BigDataEnd|——|Hadoop&Scala.V04|——|Scala.v04|模式匹配和样例类|匹配类型|
摘要:一、匹配类型 ### 匹配类型 ~~~ Scala的模式匹配还有一个强大的功能,它可以直接匹配类型,而不是值。 ~~~ 这一点是Java的switch case做不到的。 ~~~ 匹配类型的语法:case 变量 : 类型 => 代码,而不是匹配值的“case 值 => 代码”这种语法。 ### 代码 阅读全文

posted @ 2022-04-11 19:55 yanqi_vip 阅读(18) 评论(0) 推荐(0) 编辑

|NO.Z.00046|——————————|BigDataEnd|——|Hadoop&Scala.V02|——|Scala.v02|模式匹配和样例类|字符|字符串匹配|
摘要:一、字符和字符串匹配 ### 编程示例 def main(args: Array[String]): Unit = { val charStr = '6' charStr match { case '+' => println("匹配上了加号") case '-' => println("匹配上了减 阅读全文

posted @ 2022-04-11 19:54 yanqi_vip 阅读(8) 评论(0) 推荐(0) 编辑

|NO.Z.00045|——————————|BigDataEnd|——|Hadoop&Scala.V01|——|Scala.v01|模式匹配和样例类|模式匹配|
摘要:一、模式匹配 ### 模式匹配 ~~~ Scala没有Java中的switch case,它有一个更加强大的模式匹配机制,可以应用到很多场合。 ~~~ Scala的模式匹配可以匹配各种情况,比如变量的类型、集合的元素、有值或无值。 ~~~ 模式匹配的基本语法结构:变量 match { case 值 阅读全文

posted @ 2022-04-11 19:53 yanqi_vip 阅读(25) 评论(0) 推荐(0) 编辑

|NO.Z.00044|——————————|BigDataEnd|——————————————————————————————————————
摘要:NO: Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of 阅读全文

posted @ 2022-04-11 19:53 yanqi_vip 阅读(3) 评论(0) 推荐(0) 编辑

|NO.Z.00041|——————————|BigDataEnd|——|Hadoop&Scala.V03|——|Scala.v03|特质|特质构造顺序|
摘要:一、特质构造顺序 ### 特质构造顺序 ~~~ 在Scala中,trait特质也是有构造器的,也就是trait中的不包含在任何方法中的代码。 ### 构造器以如下顺序执行: ~~~ 执行父类的构造器; ~~~ 执行trait的构造器,多个trait从左到右依次执行; ~~~ 构造trait时会先构造 阅读全文

posted @ 2022-04-11 19:52 yanqi_vip 阅读(9) 评论(0) 推荐(0) 编辑

|NO.Z.00042|——————————|BigDataEnd|——|Hadoop&Scala.V04|——|Scala.v04|特质|特质继承类|
摘要:一、特质继承类 ### 特质继承类 ~~~ 在Scala中,trait特质也可以继承class类,此时这个class类就会成为所有继承此trait的类的父类。 class MyUtil { def printMessage(msg: String) = println(msg) } // 特质Log 阅读全文

posted @ 2022-04-11 19:52 yanqi_vip 阅读(3) 评论(0) 推荐(0) 编辑

|NO.Z.00043|——————————|BigDataEnd|——|Hadoop&Scala.V05|——|Scala.v05|特质|Ordered|Ordering|
摘要:一、Ordered和Ordering ### Ordered和Ordering ~~~ 在Java中对象的比较有两个接口,分别是Comparable和Comparator。它们之间的区别在于: ~~~ 实现Comparable接口的类,重写compareTo()方法后,其对象自身就具有了可比较性; 阅读全文

posted @ 2022-04-11 19:52 yanqi_vip 阅读(18) 评论(0) 推荐(0) 编辑

|NO.Z.00040|——————————|BigDataEnd|——|Hadoop&Scala.V02|——|Scala.v02|特质|带有具体|实现特质|
摘要:一、带有具体实现的特质 ### 具体方法 ~~~ Scala中的trait特质不仅仅可以定义抽象方法, ~~~ 还可以定义具体实现的方法,这时的trait更像是包含了通用工具方法的类。 ~~~ 比如,trait中可以包含一些很多类都通用的功能方法, ~~~ 比如打印日志等等,Spark中就使用了tr 阅读全文

posted @ 2022-04-11 19:51 yanqi_vip 阅读(38) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 下一页
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示