scala入门(二)

数组

定长数组

val arr1 = Array(11,21,31)  有初始值
val arr2 = new Array[T] (数组长度) 无初始值,  T表示数组的类型

变长数组:(使用前需要导包 import scala.collection.mutable.ArrayBuffer

val arr1 = ArrayBuffer(4,2,4)    有初始值
val arr2 = new ArrayBuffer[T] (数组长度)  无初始值,  T表示数组的类型

不导包会出现:
在这里插入图片描述
导包后:
在这里插入图片描述
添加元素
添加元素可以使用+=,也可以使用++=。使用+=可以添加一个或多个元素,使用++=可以添加一个数组(Array)的元素,数组中的元素会被一个个添加到a2数组中
在这里插入图片描述
插入元素
insert(n,x,x,x) 在下标为n的后边插入元素。

在idea中,直接打印数组只能的到数组地址,想要打印数组元素需要通过toBuffer方法转换为数组缓冲查看。

数组遍历

在这里插入图片描述
yield 关键字用于创建一个新数组来存储原数组改变后的值,原数组不会变

在这里插入图片描述
数组中还有map方法可以实现上述功能
在这里插入图片描述

Collection

映射map
可变map和不可变map,指的是是否可修改

不可变map (默认包:scala.collection.immutable.Map)
在这里插入图片描述
可变map(手动导包:import scala.collection.mutable.Map)

在这里插入图片描述
添加元素:
+=,不能添加重复的key,否则会覆盖,相当于修改操作
当不使用“->”时,需要先写另两个小括号,内部的小括号用来写key,value
在这里插入图片描述
删除元素:“-=”、“remove”
只需要指定key即可

在这里插入图片描述遍历

普通for循环
在这里插入图片描述
模式匹配
在这里插入图片描述

元组tuple

元组的创建
最多可以有22个tuple
在这里插入图片描述
元组的获取
在这里插入图片描述
对偶元组可以转换为map

在这里插入图片描述
List
可变列表和不可变列表

不可变列表
head,tail方法
head,返回第一个元素
tail,返回除第一个元素外的集合,如果列表中只有一个元素则返回Nil(空集合)
在这里插入图片描述
添加元素变成新集合

头部加元素

l1.+= 4
4 +: l1
4 :: l1

在这里插入图片描述
尾部加元素

 l1 :+ 4
 l1 ++ l2
 l1 ::: l2

:+用来添加元素
++、:::用来添加集合
在这里插入图片描述
以上操作都是创建新的集合,原来的集合没有改变。

导包import scala.collection.mutable.ListBuffer
可变list,ListBuffer

在这里插入图片描述
添加元素
+=
append
在这里插入图片描述
移除元素

-=
remove(N)  N 是指下标。

在这里插入图片描述
可变可以转为不可变
在这里插入图片描述
对于操作后是否会生成新的集合,可以看具体情况。

set集合
不可变和可变

set集合运算 &(交)++(并)–(差)
在这里插入图片描述
可变set集合
导包import scala.collection.mutable.Set
在这里插入图片描述

&~   不同于后者中的元素

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值