scala-43:Scala中类型变量Bounds代码实战及其在Spark中的应用源码解析
来源:互联网 发布:懒蛋蛋布丁玩具淘宝 编辑:程序博客网 时间:2024/04/29 22:12
内容:
1、Scala中的类型变量Bounds代码实战
2、泛型变量Bounds在Spark中的应用
class Pair[T <: Comparable[T]](val first : T,val second : T){ def bigger = if(first.compareTo(second) > 0)first else second }class Pair_Lower_Bound[T](val first:T,val second:T){ def replaceFirst[R >: T](newFirst:R)= new Pair_Lower_Bound[R](newFirst,second)}object Typy_Variables_Bounds { def main(args: Array[String]){ val pair = new Pair("Spark", "Hadoop") println(pair.bigger) }}
上述代码中给泛型类Pair中的类型T一个限定,即类型为T的成员有一个方法为CompareTo,如注释掉的代码会报错,因为不知道first和second的具体类型,无法判定first和second是否有CompareTo,那么就需要对T有一个限定(对变量类型本身的限定)。具体限定为[T<:Comparable[T]],即T类型为Comparable的子类型(如:compareTo),比较的实现为函数bigger。Class replaceFirst[R:>T]说明R类型为T的父类,Pair[T:<ComparableTo[T]]说明T类型为ComparableTo[T]的下界。
0 0
- scala-43:Scala中类型变量Bounds代码实战及其在Spark中的应用源码解析
- 43.Scala中类型变量Bounds代码实战及其在Spark中的应用源码解析
- 第43讲:Scala中类型变量Bounds代码实战及其在Spark中的应用源码解析学习笔记
- Scala深入浅出进阶经典 第43讲:Scala中类型变量Bounds代码实战及其在Spark中的应用源码解析
- scala-45:Scala中Context Bounds代码实战及其在Spark中的应用源码解析
- 44.Scala中View Bounds代码实战及其在Spark中的应用源码解析
- 45.Scala中Context Bounds代码实战及其在Spark中的应用源码解析
- Scala深入浅出进阶经典 第44讲:Scala中View Bounds代码实战及其在Spark中的应用源码解析
- Scala深入浅出进阶经典 第45讲:Scala中Context Bounds代码实战及其在Spark中的应用源码解析
- 第44讲:Scala中View Bounds代码实战及其在Spark中的应用源码解析学习笔记
- 第45讲:Scala中Context Bounds代码实战及其在Spark中的应用源码解析学习笔记
- 48.Scala类型约束代码实战及其在Spark中的应用源码解析
- Scala深入浅出进阶经典 第48讲:Scala类型约束代码实战及其在Spark中的应用源码解析
- 49.Scala中Variance代码实战及其在Spark中的应用源码解析
- Scala深入浅出进阶经典 第49讲:Scala中Variance代码实战及其在Spark中的应用源码解析
- scala-44:Scala中View Bounds代码实战及其在Spark中的应
- 第48讲:Scala类型约束代码实战及其在Spark中的应用源码解析学习笔记
- scala-46: ClassTag 、Manifest、ClassManifest、TypeTag代码实战及其在Spark中的应用源码解析
- android addIdleHandler 空闲线程 源码分析
- 系统在IE下报c00ce56e错误
- split
- project euler 90
- spark和hadoop的区别
- scala-43:Scala中类型变量Bounds代码实战及其在Spark中的应用源码解析
- Oozie中Sqoop的配置及应用
- python 循环
- 国产厂商的低价产品虽然利润很低
- JPA 中使用@Where
- Oozie中Shell action的配置及应用
- Linux系统apache2.4环境下php7.0.0的源码安装
- Android BackgroundViewPager:类似桌面背景壁纸随手指滑动
- 蓝桥杯 方格取数 (多线程DP)