目录
- 概述
- 实践
- 代码
- 执行
- 结束
概述
scala 中的视图界定
实践
代码
/*** 视图界定*/
object Genericity03 {def main(args: Array[String]): Unit = {println(new MaxInt(1,2).compare)println(new MaxLong(1L,2L).compare)// 不行
// println(new MaxValue(1,2).compare)// 行,隐式转换println(new MaxValue[Integer](1,2).compare)println(new MaxValue2(1,2).compare)}// <% 视图界定 int2Integerclass MaxValue2[T <% Comparable[T]] (a:T,b:T){def compare = if (a.compareTo(b)>0) a else b}class MaxValue[T <: Comparable[T]] (a:T,b:T){def compare = if (a.compareTo(b)>0) a else b}class MaxInt(a: Int, b: Int) {def compare = if (a > b) a else b}class MaxLong(a: Long, b: Long) {def compare = if (a > b) a else b}
}
执行
结束
scala视图界定
至此结束。