scalaの中の::,+:,:::,+,::,++,などの操作を少し整理します

825 ワード

面接はいつも簡単な操作を聞くので、なかなかまとめられません.

package test
/**
  * scala  :: , +:, :+, :::, +++,    ;
  */
object listTest {
  def main(args: Array[String]): Unit = {
    val list = List(1,2,3)
    // ::               ,      , x::list,x     list   
    println(4 :: list)  //  : List(4, 1, 2, 3)
    // .::    list     ;        ,          ; list.::(x);
    println( list.:: (5)) //  : List(5, 1, 2, 3)
    // :+    list      ; list :+ x;
    println(list :+ 6)  //  : List(1, 2, 3, 6)
    // +:    list       ;
    val list2 = "A"+:"B"+:Nil //Nil Nil     List,   List[Nothing]
    println(list2)  //  : List(A, B)
    // :::       List      list ::: list2
    println(list ::: list2) //  : List(1, 2, 3, A, B)
    // ++         ,list ++ list2
    println(list ++ list2) //  : List(1, 2, 3, A, B)
  }