美文网首页Scala
Scala基础(10)- Collection

Scala基础(10)- Collection

作者: 彤庆 | 来源:发表于2015-03-25 04:13 被阅读316次

    前面已经介绍了Array和List,这里讲讲其他有用的Collection已经相互转换。

    序列

    Array和List都属于序列(Sequence)。List支持从head插入,如果需要append,考虑使用ListBuffer。ListBuffer是mutable的类型。支持constant time的从前和从后插入。从前使用+=:,从后使用+=。ArrayBuffer和ListBuff相似,不再赘述。

    import scala.collection.mutable.ListBuffer
    val buf = new ListBuffer[Int]
    buf += 1
    buf +=: 2
    

    除了Array和List外,Scala中的String也是序列。

    Set,Map

    Set和Map,默认是immutable,除非显示指明。

    import scala.collection.mutable
    val mutaSet = mutable.Set(1, 2, 3)
    
    val map = mutable.Map.empty[String, Int]
    

    SortedMap和SortedSet,顾名思义,其元素或key是有序的。

    Set可以通过toListtoArray方法转换为List或者Set

    通过空集,可以实现immutable和mutable的转换。

    val mutaSet = mutable.Set.empty ++= treeSet
    val immutaSet = Set.empty ++ mutaSet
    

    元组

    和Array,List不同,Tuple(元组)中的对象可以有不同的类型。元组的一个典型应用就是返回多个对象。比如在统计文本时,需要返回词和其所在位置。

    相关文章

      网友评论

        本文标题:Scala基础(10)- Collection

        本文链接:https://www.haomeiwen.com/subject/lsvgxttx.html