摘要: 隐式转换:当某个类没有具体的方法时,可以在该类的伴生对象或上下文中查找是否存在隐式转换,将其转换为可以调用该方法的类,通过代码简单的描述下 一:隐式转换 1、定义类Man class Man(val name: String) 2、定义类SuperMan,并在类中定义一个方法 class SuperMan(val name: String) { def makeMiracles = pr... 阅读全文
posted @ 2018-11-21 19:31 Mars、少年 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 1、Scala的类和方法、函数都可以是泛型 2、上界:表示泛型的类型必须是某种类型或者其类型的子类,语法:<: ,对类型进行限定 3、下界:表示泛型的类型必须是某种类型或者其类型的父类,语法:>: 4、View Bounds,可以进行隐式转换,将其转换成目标类型,是上边界和下边界的加强版, 语法 T 阅读全文
posted @ 2018-11-21 19:25 Mars、少年 阅读(150) 评论(0) 推荐(0) 编辑
摘要: package com.dt.spark.scala.bascis object Functional_Itearal { def main(args: Array[String]): Unit = { val range = 1 to 10 val list = List(1,2,3,4,5) println(list.head) println... 阅读全文
posted @ 2018-11-21 18:14 Mars、少年 阅读(161) 评论(0) 推荐(0) 编辑
摘要: package com.dt.spark.scala.bascis class Dataframework case class Computerframework (name:String,popular:Boolean) extends Dataframework case class Storgeframework (name:String,popular:Boolean) ext... 阅读全文
posted @ 2018-11-21 18:07 Mars、少年 阅读(175) 评论(0) 推荐(0) 编辑
摘要: /** * 函数式编程进阶: * 1、函数和变量一样作为Scala语言的一等公民,函数可以直接赋值给变量 * 2、函数更常用的方式是匿名函数,定义的时候只需要说明输入参数的类型和函数体即可,不需要名称, * 一般会把它赋值给变量,在Spark源码中大量存在 * 3、函数可以作为参数直接传递给函数,极 阅读全文
posted @ 2018-11-21 10:10 Mars、少年 阅读(154) 评论(0) 推荐(0) 编辑