大数据系列修炼-Scala课程44
核心内容:
1、Scala中View Bounds代码实战及其在Spark中的应用源码解析
1、Scala中View Bounds的重要应用 |
1>在scala的类型变量限定当中,Int,Double类型本来是不是Comparable[T]的子类,但是通过视图界定<%,Int,Double类型可以隐式
的转换为Comparable[T]的子类。
注意:只有Java中的基本数据类型和用户自定义的数据类型并且实现了Comparable接口中的compareTo方法,才能使用视图界定<%的方式。
2>Ordered是Comparable接口的子类,并在其基础上面提供了一些常用的关系操作符。
3>通过Ordered中的关系操作符,我们可以方便的对两个对象进行比较,而不需要用compareTo这种方法。
4>只有在视图界定<%的前提下,我们才可以使用Ordered;若是直接的应用类型变量上界的方式,我们是不可以直接使用Ordered。
5>视图界定<%比类型变量的上界<:更加常用。
本篇博客将详细的介绍视图界定在Scala中的由来与重要性:
实例程序1:Scala中类型变量上界的应用:
object App
{
def main(args:Array[String]):Unit=
{
val aa = new A[String](