scala中:: , +:, :+, :::, +++的区别
生活随笔
收集整理的這篇文章主要介紹了
scala中:: , +:, :+, :::, +++的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文鏈接:https://segmentfault.com/a/1190000005083578
-------------------------------------------------------------
4種操作符的區別和聯系
-
::?該方法被稱為cons,意為構造,向隊列的頭部追加數據,創造新的列表。用法為?x::list,其中x為加入到頭部的元素,無論x是列表與否,它都只將成為新生成列表的第一個元素,也就是說新生成的列表長度為list的長度+1(btw,?x::list等價于list.::(x))
-
:+和+:?兩者的區別在于:+方法用于在尾部追加元素,+:方法用于在頭部追加元素,和::很類似,但是::可以用于pattern match ,而+:則不行. 關于+:和:+,只要記住冒號永遠靠近集合類型就OK了。
-
++?該方法用于連接兩個集合,list1++list2
-
:::?該方法只能用于連接兩個List類型的集合
具體示例
scala> "A"::"B"::Nil res0: List[String] = List(A, B)scala> "A"+:"B"+:Nil res1: List[String] = List(A, B)scala> Nil:+"A":+"B" res2: List[String] = List(A, B)scala> res0 ++ res1 res3: List[String] = List(A, B, A, B)scala> res0 ::: res1 res4: List[String] = List(A, B, A, B)scala> res0 :: res1 res5: List[java.io.Serializable] = List(List(A, B), A, B)總結
以上是生活随笔為你收集整理的scala中:: , +:, :+, :::, +++的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win10 设置游戏全屏
- 下一篇: 手机端本地图片或者拍照的上传功能