Scala深入浅出进阶经典 第42讲:Scala中泛型类、泛型函数、泛型在Spark中的广泛应用
2015-09-24 23:58
483 查看
package com.dt.scalaInAction.demo_042 import scala.reflect.ClassTag /** * 定义一个泛型类 []中定义的就是未知的类型 只有赋值使用时才能确定具体的类型 */ class Triple[X: ClassTag, Y, Z](val first: X, val second: Y, val thrid: Z) /** * Scala中泛型类、泛型函数、泛型在Spark中的广泛应用 */ object Hello_Type_Parameterization { def main(args: Array[String]): Unit = { //在定义后scala的类型推断会得出triple类型为 Triple[String, Int, Double] val triple = new Triple("Spark", 3, 3.1415926) //显示声明类型 val bigData = new Triple[String, String, Char]("Spark", "Hadoop", 'R') //定义泛型函数 def getData[T](list: List[T]) = list(list.length / 2) println(getData(List("Spark", "Hadoop", 'R'))) //Hadoop val f = getData[Int] _ //显式指定类型 //val f: List[Int] => Int println(f(List(1,2,3,4,5,6,7,8))) //5 def foo[A, B](f: A => List[A], b: A) = f(b) } }
以上内容是从王家林老师DT大数据课程第42讲的学习笔记和个人整理。
DT大数据微信公众账号:DT_Spark
王家林老师QQ:1740415547
王家林老师微信号:18610086859
第42讲视频网站地址:http://pan.baidu.com/s/1sjsmSXZ
相关文章推荐
- form表单
- 1B. Spreadsheets
- shell脚本作业
- Linux下安装jdk8步骤详述
- 机器学习-k近邻算法
- 黑马程序员--多线程
- cs
- JAVA API文档(非chm版)
- nagios(centreon)监控lvs
- 【巧用百度地图】—百度地图生成器(直接获取代码)
- CentOS-6.5安装配置Tengine
- go(golang) dns 解析源码 go/src/net/dnsclient_unix.go 分析
- Scala深入浅出进阶经典 第41讲:List继承体系实现内幕和方法操作源码揭秘
- ABP之模块分析
- git config
- Oracle 分析函数的使用(主要是rollup用法)
- 1A Theatre Square
- 一切成功源于积累——20150924 美国耐用品订单符合预期为负值 黄金1小时1600点
- XHTML5 ----- 表单验证(用户名、密码和email检测)
- 字符串的拼接和拷贝的实现