List的特殊符号
定义一个List
1
|
val
day
=
List()
|
约定: []内为特殊字符,不包括[]
一 特殊字符 [ :: ]
1
|
val
when
=
"AM"
::
"PM"
::
day
|
得到result列表:
List(AM, PM)
这里简单讨论一下 :: 符号
:: 是一个final的 case class , 是一个有一个头和一个尾的非空 List
head 简称B list元素类型,第一个元素
tail 简称tl 包含除了第一个元素的其他元素
由此特征:
1. 声明when的时候 ,List() ,即day 必须在最后一个元素
2. 定义必须有List(), 即 不能
1
|
var
when
=
"AM"
::
"PM"
|
3. List 可以非空,即
1
|
val
when
=
"AM"
::
"PM"
::
List(
"Hour"
)
|
更多内容见:
见http://www.scala-lang.org/api/current/index.html#scala.collection.immutable.$colon$colon
除了上述符号,以下符号实际为List的一个方法
二 特殊字符 [ .++ ]
1
|
var
a
=
List(
1
,
2
).++(List(
3
,
4
))
|
三 特殊字符 [ ++ ] 同[ .++ ]
1
|
var
a
=
List(
1
,
2
) ++ List(
3
,
4
)
|
四 特殊字符 [ .:: ]
1
|
var
a
=
List(
2
,
3
).
::
(
1
)
|
五 特殊字符 [ +: ] 和 [ :+ ]
1
|
var
a
=
1
+
:
List(
2
,
3
)
:
+
4
|
除此以外还有 [ /: ] [ :\ ] [ ::: ] 等
见http://www.scala-lang.org/api/current/index.html#scala.collection.immutable.List
本文转自 wws5201985 51CTO博客,原文链接:http://blog.51cto.com/yjplxq/1412992,如需转载请自行联系原作者