当前位置: 首页 > news >正文

Scala中的泛型

类型参数 ---- 泛型(数据类型是变化的)
(1) 可以有多个
(2) 名称合法就行,没有固定的,一般用T(Type)
在Scala中,用[]表示。在Java中用<>表示

1. 与数据类型的区别
List是数据类型,表示一个列表。[Int]表示泛型,它约定列表中每一个元素都是Int类型
2.泛型在编译时生效,在运行不可见,最后产生的class文件中是没有泛型的

package test40// 需求:定义一个名为getMiddleEle 的方法
//      用它来获取当前的列表的中间位置的值
// 目标:
//   getMiddleEle(List(1,2,3,4,5)) ==> 5/2 = 2  ==> 下标为2的元素是:3
//   getMiddleEle(List(1,2,3,4,)) ==> 4/2 = 2  ==> 下标为2的元素是:3
object test {//定义一个函数的格式//def 函数名 (参数名:类型): 返回值的类型 = {//  函数体// }//List[Int]:List是列表,[Int] 是说列表中的每一个元素都是int// 类型参数 ---- 泛型(数据类型是变化的)// (1) 可以有多个// (2) 名称合法就行,没有固定的,一般用T(Type)// 在Scala中,用[]表示。在Java中用<>表示def getMiddleEle[X](list: List[X]): X = {list(list.length / 2)}def main(args: Array[String]): Unit = {val rs1 = getMiddleEle[Int](List(1,2,3,4,5))println(rs1)val rs2 = getMiddleEle[String](List("a","b","c","d","e"))println(rs2)val rs3 = getMiddleEle[Double](List(1.1,2.2,3.3))println(rs3)}// 理解泛型// 1. 与数据类型的区别//    List是数据类型,表示一个列表。[Int]表示泛型,它约定列表中每一个元素都是Int类型//  val l1 = List[Int](1,2,"a")//  l1.foreach(println)// 2.泛型在编译时生效,在运行不可见,最后产生的class文件中是没有泛型的
}

http://www.lryc.cn/news/502795.html

相关文章:

  • 数据分析特征标准化方法及其Python实现
  • UnityShaderLab 实现程序化形状(一)
  • 前端数据安全防护(控制台)
  • 自己玩虚拟机:vagrant,virtual box,centos
  • Frida框架HOOK RegisterNatives函数
  • [创业之路-189]:《华为战略管理法-DSTE实战体系》-2- 生存与发展的双重旋律:短期与长期、战术与战略的交响乐章
  • TDengine 部署
  • 【前端】20种 Button 样式
  • 机器人构建详解:售前售后服务客服机器人与广告生成机器人的微调数据处理方法
  • mysql的执行计划分析和索引下推以及索引长度计算
  • C#中的string操作详解-截取、分割、连接、替换等
  • Redis Cluster 分片机制
  • 论文结论:GPTs and Hallucination Why do large language models hallucinate
  • CSS在线格式化 - 加菲工具
  • 组件通信(父传子,子传父,跨组件通信)
  • JWT 令牌:原理、应用与安全考量
  • YOLOv5+pyqt5+摄像头在特定条件下进行目标检测并采集原始数据
  • 12.6深度学习_模型优化和迁移_整体流程梳理
  • TCP 和 UDP 可以使用同一个端口吗
  • 信而泰网络测试仪校准解决方案
  • Java 实现给pdf文件指定位置盖章功能
  • 机器学习支持向量机(SVM)算法
  • 解决 MySQL 启动失败与大小写问题,重置数据库
  • 计算生成报价单小程序系统开发方案
  • 若依集成Uflo2工作流引擎
  • STM32模拟I2C通讯的驱动程序
  • Unity简单操作及使用教程
  • 网络安全法-监测预警与应急处置
  • qt 设置系统缩放为150%,导致的文字和界面的问题
  • Scala的正则表达式二