final case class ::[B](private var hd: B, private[scala] var tl:List[B]) extends List[B] 

tl通过private限制访问的目的是保证tl的不可变性,这样在构建头元素hd不同的而后面list相同的新的list的时候就可以直接指向tl,高效。

这里既保证了函数式编程,又能高效的创建新的对象。


兴趣的朋友请关注DT大数据梦工厂微信公众账号:DT_Spark

王家林老师微信号:18610086859 

QQ群:

DT大数据梦工厂① :462923555 

DT大数据梦工厂②: 437123764 

DT大数据梦工厂③ :418110145