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

企业网官方网站河南建设人才教育信息网

企业网官方网站,河南建设人才教育信息网,秦皇岛网站关键词,网站建设加微信1 元组 元组也是可以存放不同数据类型的元素#xff0c;并且最重要的是#xff0c;元组中的元素是不可变的。 例如#xff0c;定义一个元组#xff0c;包含字符串 hello#xff0c;数字 20。如果试图把数字 20 修改为 1#xff0c;则会报错。 scala var a (并且最重要的是元组中的元素是不可变的。 例如定义一个元组包含字符串 hello数字 20。如果试图把数字 20 修改为 1则会报错。 scala var a (hello, 20) var a: (String, Int) (hello,20)scala a._1 val res3: String helloscala a._2 1 -- [E052] Type Error: ---------------------------------------------------------- 1 |a._2 1|^^^^^^^^|Reassignment to val _2|| longer explanation available when compiling with -explain 1 error found1.1 定义元组 定义元素有两种方法 使用 () 定义使用 - 定义这种方法定义的元组最多只能包含2个元素。 scala val a (20, Hello World, true) val a: (Int, String, Boolean) (20,Hello World,true)scala val a 1-2 val a: (Int, Int) (1,2)scala val a 1-2,3-4 -- Error: ---------------------------------------------------------------------- 1 |val a 1-2,3-4| ^| end of statement expected but , found1.2 访问元组 访问元组和访问数组不同访问元组需要使用 ._index注意index 是从 1 开始的。 例如._1 访问元组的第一个元素使用 ._2 访问的是元组的第二个元素。 scala val a (1, Hello World, true) val a: (Int, String, Boolean) (1,Hello World,true)scala a._1 val res4: Int 1scala a._2 val res5: String Hello Worldscala a._3 val res6: Boolean true2 列表 列表是 scala 中常用的数据结构特点是可以保存重复的值并且有先后顺序。列表和数组一样分为可变和不可变两种。 在使用可变列表前需要先引入类 scala.collection.mutable.ListBuffer 2.1 不可变列表 不可变列表的元素和长度都不能更改。 创建不可变列表有如下方法 val/var variable_name List(ele1,ele2,ele3,...) // 创建带有初始化元素的不可变列表 val/var variable_name ele1 :: ele2 :: Nil // 创建带有初始化元素的不可变列表 val/var variable_name Nil // 创建一个空的不可变列表根据上述3种创建方式创建一个与萨努为 0、1、2、3 的列表 scala val list List(0,1,2,3) val list: List[Int] List(0, 1, 2, 3)scala val list 0::1::2::3::Nil val list: List[Int] List(0, 1, 2, 3)scala val list Nil val list: scala.collection.immutable.Nil.type List()2.2 可变列表 可变列表的元素和长度都是可以改变的创建可变列表的语法如下 // 创建空的可变列表 val/var variable_name ListBuffer[Int]() // 创建带有初始元素的可变列表 val/var variable_name ListBuffer(ele1, ele2, ele3, ...)创建一个元素为 0、1、2、3 的可变列表 scala import scala.collection.mutable.ListBufferscala val list ListBuffer() val list: scala.collection.mutable.ListBuffer[Nothing] ListBuffer()scala val list2 ListBuffer(0,1,2,3) val list2: scala.collection.mutable.ListBuffer[Int] ListBuffer(0, 1, 2, 3)2.2.1 添加一个元素到尾部 使用运算符 往可变列表尾部追加一个元素。 下面定义一个可变列表初始元素为 0、1、2、3添加一个元素 4 到尾部。 scala import scala.collection.mutable.ListBufferscala val list ListBuffer(0,1,2,3) val list: scala.collection.mutable.ListBuffer[Int] ListBuffer(0, 1, 2, 3)scala list 4 val res7: scala.collection.mutable.ListBuffer[Int] ListBuffer(0, 1, 2, 3, 4)2.2.2 删除一个元素 使用运算符 - 删除可变列表中的一个元素。 下面定义一个可变列表初始元素为0、1、2、3删除元素2。 scala import scala.collection.mutable.ListBufferscala val list ListBuffer(0,1,2,3) val list: scala.collection.mutable.ListBuffer[Int] ListBuffer(0, 1, 2, 3)scala list - 2 val res8: scala.collection.mutable.ListBuffer[Int] ListBuffer(0, 1, 3)2.2.3 追加一个列表 使用运算符 往可变列表中追加另外一个列表的所有元素. scala val list ListBuffer(0,1,2,3) val list: scala.collection.mutable.ListBuffer[Int] ListBuffer(0, 1, 2, 3)scala list List(4,5) val res9: scala.collection.mutable.ListBuffer[Int] ListBuffer(0, 1, 2, 3, 4, 5)2.2.4 转为不可变列表 使用 toList 方法可以把可变列表转换为不可变列表 scala import scala.collection.mutable.ListBufferscala val list ListBuffer(0,1,2,3) val list: scala.collection.mutable.ListBuffer[Int] ListBuffer(0, 1, 2, 3)scala list.toList val res10: List[Int] List(0, 1, 2, 3)2.2.5 转为不可变数组 使用 toArray 方法可以把可变列表转换为不可变列表 scala import scala.collection.mutable.ListBufferscala val list ListBuffer(0,1,2,3) val list: scala.collection.mutable.ListBuffer[Int] ListBuffer(0, 1, 2, 3)scala list.toArray val res11: Array[Int] Array(0, 1, 2, 3)2.3 列表常用操作 2.3.1 判断列表是否为空 使用 isEmpty 方法可以判断列表是否为空 scala val list List(0,1,2,3) val list: List[Int] List(0, 1, 2, 3)scala list.isEmpty val res12: Boolean false2.3.2 拼接两个列表 使用运算符 可以拼接两个列表返回一个新生成的列表。 scala val list List(0,1,2,3) val list: List[Int] List(0, 1, 2, 3)scala val tempList List(4,5) val tempList: List[Int] List(4, 5)scala listtempList val res13: List[Int] List(0, 1, 2, 3, 4, 5)2.3.3 获取首个元素及剩余部分 使用 head 可以获取列表的首个元素而 tail 则可以获取除第一个元素外的其他元素返回的是一个在内存中生成的新列表。 scala val list List(0,1,2,3) val list: List[Int] List(0, 1, 2, 3)scala list.head val res14: Int 0scala list.tail val res15: List[Int] List(1, 2, 3)2.2.4 反转列表 使用 reverse 方法可以反转列表。 scala val list List(0,1,2,3) val list: List[Int] List(0, 1, 2, 3)scala list.reverse val res16: List[Int] List(3, 2, 1, 0)2.2.5 获取列表前缀和后缀 使用 take 方法可以获取前几个元素而 drop 方法获取第几个元素后的元素。 scala val list List(0,1,2,3) val list: List[Int] List(0, 1, 2, 3)scala list.take(3) val res18: List[Int] List(0, 1, 2)scala list.drop(3) val res19: List[Int] List(3)2.2.6 扁平化 扁平化适用于一个列表中包含多个列表的场景。使用 flatten 方法可以将某个列表中包含的列表元素提取出来放在另一个列表中如果列表中有相同的元素会保留。 scala val list List(List(0), List(2,3), List(1), List(0)) val list: List[List[Int]] List(List(0), List(2, 3), List(1), List(0))scala list.flatten val res21: List[Int] List(0, 2, 3, 1, 0)2.2.7 拉链 拉链是指将两个列表通过相同的索引组成一个元素为元素的列表。 scala val studentName List(student1, student2, student3) val studentName: List[String] List(student1, student2, student3)scala val studentClass List(class1, class2, class3, class4) val studentClass: List[String] List(class1, class2, class3, class4)scala studentName.zip(studentClass) val res22: List[(String, String)] List((student1,class1), (student2,class2), (student3,class3))2.2.8 拉开 拉开就是讲一个拉链的列表拉开生成包含对应列表元素的元组。 scala val studentName List(student1, student2, student3) val studentName: List[String] List(student1, student2, student3)scala val studentClass List(class1, class2, class3, class4) val studentClass: List[String] List(class1, class2, class3, class4)scala val zipList studentName.zip(studentClass) val zipList: List[(String, String)] List((student1,class1), (student2,class2), (student3,class3))scala zipList.unzip val res23: (List[String], List[String]) (List(student1, student2, student3),List(class1, class2, class3))2.2.9 连接成字符串 使用 mkString可以通过分隔符把列表的元素转换字符串。 scala val list List(0,1,2,3) val list: List[Int] List(0, 1, 2, 3)scala list.mkString(,) val res24: String 0,1,2,32.2.1 求并集 使用 union 方法可以取两个集合的并集不去重。如果需要去重则需要调用 distinct。 scala val list1 List(0,1,2,3) val list1: List[Int] List(0, 1, 2, 3)scala val list2 List(2,4,5,6) val list2: List[Int] List(2, 4, 5, 6)scala val unionList list1.union(list2) val unionList: List[Int] List(0, 1, 2, 3, 2, 4, 5, 6)scala unionList.distinct val res25: List[Int] List(0, 1, 2, 3, 4, 5, 6)2.2.2 求交集 使用 intersect 放可取两个列表的交集。 scala val list1 List(0,1,2,3) val list1: List[Int] List(0, 1, 2, 3)scala val list2 List(2,4,5,6,3) val list2: List[Int] List(2, 4, 5, 6, 3)scala list1.intersect(list2) val res26: List[Int] List(2, 3)2.2.3 求差集 使用 diff 方法可以求两个列表的差集例如 list1.diff(list2) 表示取 list1 中 list2 中不包含的元素 scala val list1 List(0,1,2,3) val list1: List[Int] List(0, 1, 2, 3)scala val list2 List(2,4,5,6,3) val list2: List[Int] List(2, 4, 5, 6, 3)scala list1.diff(list2) val res27: List[Int] List(0, 1)
http://www.ho-use.cn/article/10822518.html

相关文章:

  • 建设银行网站注册企业如何免费注册企业邮箱
  • 制作一个自己的网站怎样创业白手起家开公司
  • 企业网站配色深圳市宝安区松岗街道
  • 无锡论坛网站建设烟台营销型网站建设
  • 凡科做的网站怎么改壁纸房地产销售政策
  • 成都网站建设cdsqywl网站如何添加浮动窗口
  • ssc网站建设自学手机网站开发
  • 0基础做网站用什么语言手机导航网站模板
  • 宁波智能模板建站pycharm网站开发
  • 成都自适应网站建设 中国人免费的片
  • 建设网站 课程设计企业管理软件的发展趋势
  • 西安市建设银行网站爱站网是干嘛的
  • 网站建设的固定资产包括哪些做电影网站需要
  • 网站怎么做seo优化贵州省遵义市住房城乡建设局网站
  • 河北正规网站建设比较制作网站需要哪些知识
  • tk域名网站个人免费网站注册com
  • 如何对网站的图片做cdn聊城网站策划
  • 怎么做外贸网站优化网站栏目模块
  • 网站建设首页该放什么云服务器搭建
  • 学做网站论坛vip账户资源搜索
  • 搭建英文网站网络app推广是什么工作
  • 网站建设 拖欠尾款wordpress交易排行榜
  • 看摄影作品的网站网站视频做栏目一般一期多钱
  • 东莞网站建设 少儿托管禁止wordpress历史版本
  • 模板网站zencartwordpress 禁用谷歌
  • 郑州网站建设讠汉狮网络快速优化seo
  • 三台网站建设哪家专业wordpress类似的网站
  • 建设网站技术要求win 搭建wordpress
  • 网站建设合同要不要交印花税装饰设计基础
  • 网站收录查询主要由哪几个网站邢台做网站名列前茅