Scala函数的泛型

复制代码
package hfd
//泛型
//需求:你是一个程序员,老板让你写一个函数,用来获取列表中的中间元素
//List(1,2,3,4,5)==>中间元素的下标=长度/2 ===>3
//getMiddleEle
object Test38_5 {

  def print1():Unit={
    println(1)
  }

  def print2(): Unit = {
    println(2)
  }

  def print3(): Unit = {
    println(3)
  }
def print (n: Int): Unit = {
  println (n)
  }
  //定义函数的格式:
  //def 函数的名字(参数1:类型1):返回值类型={
  //}
  //  def getMiddleEle1(list:List[Int]): Int =list(list.length/2)
  //
  //  def getMiddleEle2(list: List[String]): String = list(list.length / 2)
  //
  //  def getMiddleEle3(list: List[Double]):Double=list(list.length/2)

//[T]就是泛型:类型参数化,把类型当做参数传入函数内部
  def getMiddleEle[T] (list: List[T] ): T = list (list.length / 2)

  def main (args: Array[String] ): Unit = {
  val rs1 = println (getMiddleEle (List (1, 2, 3, 4, 5) ) ) //3
  println (rs1)
 val rs2= println (getMiddleEle (List ("1", "2", "3", "4", "5") ) ) //3
  println (rs2)
  val rs3=println (getMiddleEle(List (1.2, 2.0, 2.9) ) ) //2.0
  println (rs3)
  }
  }
相关推荐
程序员cxuan15 小时前
虽迟但到!GPT-5.6 终于来了!
人工智能·后端·程序员
IT_陈寒18 小时前
React的这个渲染问题连官方文档都没说清楚
前端·人工智能·后端
葫芦和十三18 小时前
图解 MongoDB 15|journal 与持久化:写入怎么不丢,崩溃怎么恢复
后端·mongodb·面试
葫芦和十三18 小时前
图解 MongoDB 16|压缩:snappy、zstd 和 zlib 的取舍
后端·mongodb·面试
苍何19 小时前
终于找到免费开源TTS模型,克隆声音不要钱,本地电脑也能跑
后端
用户5936087414019 小时前
Spring AI 集成 DeepSeek 原生供应商并实现think模式
后端
追逐时光者19 小时前
别再满网找零散工具了,腾讯 QQ 浏览器这个“帮小忙”工具箱真能省时间
前端·后端
心静自然凉80019 小时前
Linux网络核心知识+bonding主备模式配置
后端
爻渡21 小时前
异步编程演进史:从回调到Promise再到Async/Await
后端·程序员
要阿尔卑斯吗1 天前
企业级 RAG 系统的文件标签管理:三层架构与层级优化实战
后端