Scala学习——数据结构

Scala学习——数据结构

一、定长数组

1.先声明长度,再填充元素。【索引用圆括号】

2.直接指定元素

二、变长数组

1.生成变长数组

val c = scala.collection.mutable.ArrayBuffer[String]()
    c += "python"
    c += ("java", "scala")
    for (i <- c)
      println(i)

三、list

1.定义一个list

2.一个列表是有头和尾的。

第一个元素为头,其余均为尾。

3.一个空的列表是Nil

4.在列表头部添加数据,使用操作符  ::

5.合并多个list,使用操作符  :::

四、元组

元组是不同类型的值的聚集。元组和列表不同,列表中各个元素必须是相同类型,而元组可以包含不同类型的元素。
圆括号括起来的即元组。

五、集合

集(set)是不重复元素的集合。列表中的元素是按照插入的先后顺序来组织的,但是,”集”中的元素并不会记录元素的插入顺序,而是以“哈希”方法对元素的值进行组织,所以,它允许你快速地找到某个元素。【与Python中集合的概念类似】

1.向set内添加元素【如果定义为常量set,则无法添加元素】

六、Map映射,类似Python字典。

1.不可变映射

2.不可变映射添加新的映射【无法更新键值对应的值】

var person = Map("name" -> "peter","gender" ->"male","age"->25)
println(person)
person += "location"->"bj"
println(person)

3.可变映射

可以随意添加以及更新键值对。

    //引入可变映射
    import scala.collection.mutable.Map
    val person = Map("name" -> "peter","gender" ->"male","age"->25)
    println(person)
    person += "location"->"bj"
    println(person)
    person("name")="white"
    println(person)

4.遍历映射

(1)遍历键值对

    val person = Map("name" -> "peter","gender" ->"male","age"->25)
    for ((k,v) <- person)  println(k,v)

(2)遍历键值

    val person = Map("name" -> "peter","gender" ->"male","age"->25)
    for (k <- person.keys) println(k)
    println(person.keys)

(3)遍历值

    val person = Map("name" -> "peter","gender" ->"male","age"->25)
    for (v <- person.values) println(v)
    println(person.values)

七、迭代器

迭代器(Iterator)不是一个集合,但是,提供了访问集合的一种方法。【类似python中的一个可迭代对象】

1.迭代器的两个基本操作:

(1)next:可以返回迭代器的下一个元素

(2)hasnext:用于检测是否还有下一个元素

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值