scala的知识点(二)

本文详细介绍了数组的基本操作,包括修改数组中的值、数组的追加、插入和删除元素、定长数组初始化、查找最大最小值、数组元素计数、转换为字符串、map和reduce等高级操作。通过具体代码示例,帮助读者深入理解并掌握数组的各种实用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

可以修改数组中的值
val arr1 = Array(1,2,3)
arr1(1) = 5
----
//转换为可变数组可以执行各种操作
val arr1_v = arr1.toBuffer
//添加一个数组元素
arr1_v +=1
//如果添加的是另外一个数组
arr1_v ++= arr2
//+=追加一个或者多个元素,++=追加一个seq对象
---
//在4的位置追加剩下的元素
arr1_v.insert(4,44,4444,44444)
//从第几个位置开始,删除几个元素
arr1_v.remove(2,3)
------
//定长数组的初始化
val arr1 = Array(1,2,3)
val arr2 = new Array[Int](3)
//调用的是Array.apply(3)
val arr3 = Array[Int](3)
-------
//最大值最小值等等
arr1.max
arr1.min
arr1.sum
-------
//转化为string并且用"-"进行连接
arr1.mkString("-")
//或者开头,中间,结尾分别用不同的符号
arr1.mkString("<","-",">")
----------
//map操作,就是将数组中的值分别取出作为匿名函数的参数进行处理之后返回结果
//函数类型必须和arr相同,且只有一个,返回值类型没有限制
arr1.map((x:Int)=>x+1)
//这个例子就返回一个double类型的结果集合
arr1.map((x:int)=>{val result = x+1;result.toDouble})
----------------
//相当于arr1.max
arr1.reduce((x:Int,y:Int)=>{if(x>y) x else y})
//相当于arr1.min
arr1.reduce((x:Int,y:Int)=>{if(x<y) x else y})
//初始值相当于数组中的前两个元素,进行计算之后依次和后一个再进行计算,进行fold(折叠)
//聚合到最后最终得到一个值
//接收两个参数返回一个参数,参数类型和arr1相同,返回值类型也和arr类型一样
-------
//求一个数组中元素的个数,可以把元素都转化为1然后sum一下
arr.map(x=>1).sum
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值