网站大量收购独家精品文档,联系QQ:2885784924

Scala编程详解数组操作之Array ArrayBuffer以及遍历数组.ppt

Scala编程详解数组操作之Array ArrayBuffer以及遍历数组.ppt

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北风网项目实战培训 在Scala中,Array代表的含义与Java中类似,也是长度不可改变的数组。此外,由于Scala与Java都是运行在JVM中,双方可以互相调用,因此Scala数组的底层实际上是Java数组。例如字符串数组在底层就是Java的String[],整数数组在底层就是Java的Int[]。 // 数组初始化后,长度就固定下来了,而且元素全部根据其类型初始化 val a = new Array[Int](10) a(0) a(0) = 1 val a = new Array[String](10) // 可以直接使用Array()创建数组,元素类型自动推断 val a = Array(hello, world) a(0) = hi val a = Array(leo, 30) Array 在Scala中,如果需要类似于Java中的ArrayList这种长度可变的集合类,则可以使用ArrayBuffer。 // 如果不想每次都使用全限定名,则可以预先导入ArrayBuffer类 import scala.collection.mutable.ArrayBuffer // 使用ArrayBuffer()的方式可以创建一个空的ArrayBuffer val b = ArrayBuffer[Int]() // 使用+=操作符,可以添加一个元素,或者多个元素 // 这个语法必须要谨记在心!因为spark源码里大量使用了这种集合操作语法! b += 1 b += (2, 3, 4, 5) // 使用++=操作符,可以添加其他集合中的所有元素 b ++= Array(6, 7, 8, 9, 10) // 使用trimEnd()函数,可以从尾部截断指定个数的元素 b.trimEnd(5) ArrayBuffer // 使用insert()函数可以在指定位置插入元素 // 但是这种操作效率很低,因为需要移动指定位置后的所有元素 b.insert(5, 6) b.insert(6, 7, 8, 9, 10) // 使用remove()函数可以移除指定位置的元素 b.remove(1) b.remove(1, 3) // Array与ArrayBuffer可以互相进行转换 b.toArray a.toBuffer ArrayBuffer // 使用for循环和until遍历Array / ArrayBuffer // 使until是RichInt提供的函数 for (i - 0 until b.length) println(b(i)) // 跳跃遍历Array / ArrayBuffer for(i - 0 until (b.length, 2)) println(b(i)) // 从尾部遍历Array / ArrayBuffer for(i - (0 until b.length).reverse) println(b(i)) // 使用“增强for循环”遍历Array / ArrayBuffer for (e - b) println(e) 遍历Array和ArrayBuffer // 数组元素求和 val a = Array(1, 2, 3, 4, 5) val sum = a.sum // 获取数组最大值 val max = a.max // 对数组进行排序 scala.util.Sorting.quickSort(a) // 获取数组中所有元素内容 a.mkString a.mkString(, ) a.mkString(, ,, ) // toString函数 a.toString b.toString 数组常见操作 欢迎访问我们的官方网站

文档评论(0)

xingyuxiaxiang + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档