Scala 泛型

基本介绍

如果我们要求函数的参数可以接受任意类型。可以使用泛型,这个类型可以代表任意的数据类型。
例如 List,在创建 List 时,可以传入整型、字符串、浮点数等等任意类型。那是因为 List 在 类定义时引用了泛型。比如在Java中:public interface List extends Collection

案例1
要求:

1)编写一个Message类
2)可以构建Int类型的Message,String类型的Message.
3)要求使用泛型来完成设计,(说明:不能使用Any)

在这里插入图片描述

案例2:

要求
1)请设计一个EnglishClass (英语班级类),在创建EnglishClass的一个实例时,
需要指定[ 班级开班季节(spring,autumn,summer,winter)、班级名称、班级类型]
2)开班季节只能是指定的,班级名称为String, 班级类型是(字符串类型 “高级班”, “初级班”…) 或者是 Int 类型(1, 2, 3 等)
3)请使用泛型来完成本案例.


object ScalaTest {
  def main(args: Array[String]): Unit = {
    val class1 = new EnglishClass[SeasonEnum.SeasonEnum, String, String](SeasonEnum.spring,"1班","高级班")
    println("class1:" + class1.classSeason + class1.className + class1.classType)

  }
}

class EnglishClass[A,B,C](val classSeason: A, val className: B, val classType: C){

}

//定义枚举类型,注意是  object
object SeasonEnum extends Enumeration {
  type SeasonEnum = Value
  val spring,autumn,summer,winter = Value
}

案例3:

要求
定义一个函数,可以获取各种类型的 List 的中间index的值
使用泛型完成
在这里插入图片描述

----- 韩顺平老师Scala视频笔记

猜你喜欢

转载自blog.csdn.net/weixin_45468845/article/details/106389691