美文网首页Growing数客联盟
Scala中List的::与:::方法

Scala中List的::与:::方法

作者: Woople | 来源:发表于2016-10-04 15:33 被阅读203次

    简单的说,:::用来拼接两个List

    scala> List(1, 2) ::: List(3, 4)
    res0: List[Int] = List(1, 2, 3, 4)
    

    而::用来拼接一个元素与一个List

    scala> 1 :: List(3, 4)
    res1: List[Int] = List(1, 3, 4)
    

    注意,::的左边是要加入的元素,不能放到::右边

    scala> List(3, 4) :: 1
    <console>:12: error: value :: is not a member of Int
           List(3, 4) :: 1
                      ^
    

    因为List是不可变的集合,所以无论是::还是:::,操作的结果都是生成了一个新的List,而不是修改原有的List

    scala> val list1 = List(1, 2)
    list1: List[Int] = List(1, 2)
    
    scala> val list2 = List(3, 4)
    list2: List[Int] = List(3, 4)
    
    scala> list1 ::: list2
    res0: List[Int] = List(1, 2, 3, 4)
    
    //list1与list2的内容并没有发生改变
    scala> println(list1)
    List(1, 2)
    
    scala> println(list2)
    List(3, 4)
    

    相关文章

      网友评论

        本文标题:Scala中List的::与:::方法

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