scala之数组

数组

定长数组和变长数组
(1)定长数组定义格式:
val arr=new ArrayT
(2)变长数组定义格式:
val arr = ArrayBufferT
注意需要导包:t import scala.collection.mutable.ArrayBuffer
在cmd黑窗口操作

import scala.collection.mutable.ArrayBuffer
//初始化一个长度为 8 的定长数组,其所有元素均为 0
l val arr1 = w new Array[Int](8)
//直接打印定长数组,内容为数组的 hashcode 值
println (arr1)
//将数组转换成数组缓冲,就可以看到原数组中的内容了
//toBuffer 会将数组转换长数组缓冲
北京市昌平区建材城西路金燕龙办公楼一层 电话:400-618-9090
14
println (arr1.toBuffer)
//注意:如果 new,相当于调用了数组的 apply 方法,直接为数组赋值
//初始化一个长度为 1 的定长数组
l val arr2 = Array [Int](10)
println (arr2.toBuffer)
//定义一个长度为 3 的定长数组
l val arr3 = Array ( "hadoop", "storm", "spark")
//使用()来访问元素
println (arr3(2))
//变长数组(数组缓冲)
//如果想使用数组缓冲,需要导入 import scala.collection.mutable.ArrayBuffer
包
l val ab = ArrayBuffer[Int]()
//向数组缓冲的尾部追加一个元素
//+=尾部追加元素
ab += 1
//追加多个元素
ab += (2, 3, 4, 5)
//追加一个数组++=
ab ++= Array (6, 7)
//追加一个数组缓冲
ab ++= ArrayBuffer(8,9)
//打印数组缓冲 ab
//在数组某个位置插入元素用 insert,从某下标插入
ab.insert(0, -1, 0)
//删除数组某个位置的元素用 remove 按照下标删除
ab.remove(0)
println (ab)
遍历数组

1.增强 for 循环
2.好用的 until 会生成脚标,0 until 10 包含 0 不包含 10

val arr = Array (1,2,3,4,5,6,7,8)
//增强 for 循环
for(i <- arr)
println (i)
//好用的 until 会生成一个 Range
//reverse 是将前面生成的 Range 反转
for(i <- (0 until arr.length).reverse)
println (arr(i))
数组转换

yield 关键字将原始的数组进行转换会产生一个新的数组,原始的数组不变

val arr = Array (1, 2, 3, 4, 5, 6, 7, 8, 9)
//将偶数取出乘以 10 后再生成一个新的数组
l val res = r for (e <- arr f if e % 2 == 0) d yield e * 10
println (res.toBuffer)
数组常用算法
arr.sum求和
arr.sorted排序
arr.max最大值
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值