object array04 {
def main(args: Array[String]): Unit = {
// 可变数组
val arr1 = scala.collection.mutable.ArrayBuffer(1,2,0,-1,20,3)
// 排序
val arr2 = arr1.sortWith((a,b)=>a>b)
// 切片:只取整个数组中的某个部分 slice
val arr3 = arr1.slice(0, 3)
// 过滤
val arr4 = arr1.filter(x => x>0)
// 搜索位置:检查某个元素的下标
val target = -2
val result = arr1.indexOf(target) // 如果没找到这个元素,就返回-1
println(s&
arr4.foreach(ele=> println(ele))
}
}
- 排序无需繁琐的循环,
sortWith((a,b)=>a>b)用匿名函数的方式,一句话实现了降序排列,逻辑清晰得像和计算机 “说人话”;
- 切片功能则像给数据 “裁衣”,
slice(0,3)精准截取前 3 个元素,既不用关心数组长度的边界,也不用手动写循环遍历;
- 过滤更像是 “数据筛选器”,
filter(x => x>0)轻松把正数挑出来,让代码成了 “问题描述本身”。