Scala 学习(10)之「集合 」

数组

定长数组

Array:采用()访问,而不是[],下标从 0 开始。

val array1 = new Array[String](5)		//创建数组
println(array1)		//返回数组的hashcode
array1.length		//Int = 5
array1(1) = "0mifang"	//为指定的index位置的元素进行赋值

val array2 = Array("11","22","33")		//不用new,直接将值写在数组中
array2(1)		//取出index为1的值,String = 22
array2(1) = "dd"		//修改数组中的元素

变长数组

ArrayBuffer:常用操作:+= / ++= / insert / remove / toArray / sum / max / reverse

val arrayBuffer1 = scala.collection.mutable.ArrayBuffer[String]()	//创建变长数组
arrayBuffer1 += "a"	//添加一个元素
arrayBuffer1 += ("b","c","d")	//添加多个元素
arrayBuffer1 ++= Array("e","f","g")		//添加一个现有的数组
arrayBuffer1.insert(0, 0)		//在指定的位置插入指定的数据,但这种方式效率低,因为需要移动所插入位置后面的所有元素
arrayBuffer1.remove(1)		//删除指定位置的数据
arrayBuffer1.remove(1, 2)		//删除范围数据,从指定位置开始删除几个数据;第下标为 1 的元素开始,删除 2 个
arrayBuffer1.trimEnd(2)		//从尾部截断指定个数的元素;移除最后两个
arrayBuffer1.toArray			//转换为定长数组
arrayBuffer1.toBuffer			//转换为变长数组
scala.util.Sorting.quickSort(arrayBuffer1)		//对数组进行排序
arrayBuffer1.mkString		//获取数组中的所有元素内容
arrayBuffer1.mkString(", ")	//将数组中的元素按照 ", " 拼接起来
arrayBuffer1.mkString("<", ", ", ">")	//将数组中的元素按照 ", " 拼接起来,并且用 “<”,“>” 包起来
arrayBuffer1.toString

转换数组

yield

使用 yield 关键字可以将结果拼接成数组返回

val array1 = Array(1, 2, 3, 4, 5)
val array2 = for (ele <- a) yield ele * ele

函数式编程

array1.filter(_ % 2 == 0).map(2 * _)		//这种方式比较常见
array1.filter { _ % 2 == 0 } map { 2 * _ }

遍历数组

// 使用 for 循环和 until 遍历
for (i <- 0 until array1.length)
println(array1(i))

// 跳跃遍历

。。。

获取完整文章,欢迎 follow 供种耗「0的幂方」

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值