1.++[B]   在A元素后面追加B元素

scala> val a = List(1)
a: List[Int] = List(1) scala> val b = List(2)
b: List[Int] = List(2) scala> val c = a ++ b
c: List[Int] = List(1, 2) scala> val d = List('a')
d: List[Char] = List(a) scala> val e = c ++ d
e: List[AnyVal] = List(1, 2, a)

2.++: 与++不同的是使用的右边边的数据类型

scala> val x = List(1)
x: List[Int] = List(1) scala> val y = LinkedList(2)
y: scala.collection.mutable.LinkedList[Int] = LinkedList(2) scala> var z = x ++: y
z: scala.collection.mutable.LinkedList[Int] = LinkedList(1, 2) //y是LinkedList
scala> var z = y ++: x  //使用x的类型
z: List[Int] =List(1, 2)

3.+:  在List的头部增加元素

scala> val x = List(1)
x: List[Int] = List(1) scala> val y = 2 +: x
y: List[Int] = List(2, 1) scala> println(x)
List(1)

4./:应用二进制运算符起始值,从左到右遍历迭代所有元素。

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4) scala> val b = (5 /: a)(_+_)
b: Int = 15 scala> val c = (5 /: a)((x,y) => x + y)
c: Int = 15

5.:+:在后面追加元素

scala> val a = List(1)
a: List[Int] = List(1) scala> val b = a :+ 2
b: List[Int] = List(1, 2) scala> println(a)
List(1)

6.:: 为列表增加单个元素,这是一个右结合的操作符

1 :: List(2, 3) = List(2, 3).::(1) = List(1, 2, 3)

7.::: 在列表的前面追加一个列表,这是一个右结合的操作符

List(1, 2) ::: List(3, 4) = List(3, 4).:::(List(1, 2)) = List(1, 2, 3, 4)

8.:\ 与元素合并后按照操作进行对列表遍历

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4) scala> val b = (a :\ 5)(_+_)
b: Int = 15 scala> val c = (a :\ 5)((x,y) => x + y)
c: Int = 15

9.addString(b: StringBuilder) 对列表中的所有元素迭代将拼接成字符串

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder()
b: StringBuilder = scala> val h = a.addString(b)
h: StringBuilder = 1234

10.addString(b: StringBuilder, sep: String) 使用分隔符输出字符串

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder()
b: StringBuilder = scala> a.addString(b, ", ")
res0: StringBuilder = 1, 2, 3, 4

11.addString(b: StringBuilder, start: String, sep: String, end: String) 定义输出以什么开始、分割、结束

scala> val a = List(1,2,3,4)
a: List[Int] = List(1, 2, 3, 4) scala> val b = new StringBuilder()
b: StringBuilder = scala> a.addString(b , "List(" , ", " , ")")
res5: StringBuilder = List(1, 2, 3, 4)

12. aggregate[B](z: ⇒ B)(seqop: (B, A) ⇒ B, combop: (B, B) ⇒ B): B 对列表内元素进行求和

List('a', 'b', 'c').aggregate(0)({ (sum, ch) => sum + ch.toInt }, { (p1, p2) => p1 + p2 })

13.apply(n: Int) 通过索引选择元素

scala> List('a','b','c').apply(1)
res2: Char = b

14.

Scala List 用法的更多相关文章

  1. Scala中“=>”用法及含义

    => has several meanings in Scala, all related to its mathematical meaning as implication. 1. In a ...

  2. scala函数用法

    直接上代码. package com.test.scala.test object Function { def main(args: Array[String]): Unit = { println ...

  3. scala combineByKey用法说明

    语法是: combineByKey[C](   createCombiner: V => C,   mergeValue: (C, V) => C,   mergeCombiners: ( ...

  4. 【Spark算子】:reduceByKey、groupByKey和combineByKey

    在spark中,reduceByKey.groupByKey和combineByKey这三种算子用的较多,结合使用过程中的体会简单总结: 我的代码实践:https://github.com/wwcom ...

  5. Chisel语言

    1 What is Chisel?      Chisel(Constructing Hardware In a Scala Embedded Language)是一种嵌入在高级编程语言Scala的硬 ...

  6. scala占位符_的用法

    占位符的用途颇多,先介绍几种常用的用法 1.作为"通配符",类似Java中的*.如import scala.math._2.:_*作为一个整体,告诉编译器你希望将某个参数当作参数序 ...

  7. Scala进阶之路-Scala中的枚举用法案例展示

    Scala进阶之路-Scala中的枚举用法案例展示 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Scala中的枚举值和Java中的枚举值有点差别,不过使用起来也都差大同小异,我这 ...

  8. Scala入门4(_的用法)

    从网上找了一篇博客,详细讲解了Scala下划线的用法,这里做保留 博客链接

  9. Scala中_(下划线)的常见用法

    Scala中_(下划线)的常见用法 地址:https://www.jianshu.com/p/0497583ec538

随机推荐

  1. VC++ 设置桌面壁纸

    Windows Shell API提供了接口IActiveDesktop来完成墙纸的设置. //IActiveDesktop 接口方法表 (详情参见MSDN) AddDesktopItem AddDe ...

  2. kafka对比RocketMQ(转)

    淘宝内部的交易系统使用了淘宝自主研发的Notify消息中间件,使用Mysql作为消息存储媒介,可完全水平扩容,为了进一步降低成本,我们认为存储部分可以进一步优化,2011年初,Linkin开源了Kaf ...

  3. TArray<uint8>转FString

    void ARamaUDPReceiver::Recv(const FArrayReaderPtr& ArrayReaderPtr, const FIPv4Endpoint& EndP ...

  4. 当苹果因为UIDevice、udid、uniqueIdentifier而把我们的应用拒之门外invalid binary的时候,呕心沥血解决方法啊

    本文转载至 http://blog.csdn.net/macmini/article/details/16341669 当我们辛辛苦苦把应用或者游戏做好的时候,满怀激动地把应用提交上去给苹果大大,谁知 ...

  5. SQL 语句快速参考

    来自 W3CSchool 的 SQL 快速参考 SQL 语句 语法 AND / OR SELECT column_name(s)FROM table_nameWHERE conditionAND|OR ...

  6. SpringMvc三大组件详解

    SpringMvc框架结构图 处理器映射器:用户请求路径到Controller方法的映射 处理器适配器:根据handler(controlelr类)的开发方式(注解开发/其他开发) 方式的不同区寻找不 ...

  7. FZU Moon Game(几何)

    Accept: 710    Submit: 2038 Time Limit: 1000 mSec    Memory Limit : 32768 KB  Problem Description Fa ...

  8. python学习笔记(二)— 字符串(string)

    字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'Hello World!' var2 ...

  9. System.ArgumentException: 字体“Courier New”不支持样式“Regular”。

    使用MongoVUE,发现报错,报错信息如下: System.ArgumentException: 字体“Courier New”不支持样式“Regular”. 说明本机字体安装不够:需安装完整的Co ...

  10. apt-get tips

    1.通过apt-get安装指定版本的软件 apt-get install <package name>=<version> 2.通过apt-cache列举所有可获取的版本 ap ...