Scala List 独特的 连接运算“::”(cons)和“:::”
Scala List 有一种独特的,不同于JAVA的运算符 “::” ,发音为 “cons” ,它的意义如下:
x :: xs 表示 结果是 一个 List,它的第一个元素是 x, 它后面跟着一个List xs(跟着这个表xs的所有元素),用 Nil 表示空表。
这个运算符要求前一个是 元素, 后一个是 List。
两个都是 元素 或 都是 List,是不对的。
如果两个都是List,要用 三个冒号的“:::”。
举例来说: 下面是几个Scala List的声明,它们用 ::操作符表示请参看后面的表达式。

用 ::表示如下所示:

注意这个运算符是两个英文冒号连在一起,不要写成中文冒号。

.map:获取list的每个函数一些属性,下面的.length可以替换为.substring,一次类推。

如果我们需要获取一个List里面所有元素的长度:

如果是java的思想的话,肯定会这样写:

而scala写的方法可以这样:

而foldLeft方法可以用: /:

最后:

java可能需要好几航代码来完成,scala一行就可以搞定。
scala 对 数组元素进行排序:
