Scala List 用法
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 用法的更多相关文章
- Scala中“=>”用法及含义
=> has several meanings in Scala, all related to its mathematical meaning as implication. 1. In a ...
- scala函数用法
直接上代码. package com.test.scala.test object Function { def main(args: Array[String]): Unit = { println ...
- scala combineByKey用法说明
语法是: combineByKey[C]( createCombiner: V => C, mergeValue: (C, V) => C, mergeCombiners: ( ...
- 【Spark算子】:reduceByKey、groupByKey和combineByKey
在spark中,reduceByKey.groupByKey和combineByKey这三种算子用的较多,结合使用过程中的体会简单总结: 我的代码实践:https://github.com/wwcom ...
- Chisel语言
1 What is Chisel? Chisel(Constructing Hardware In a Scala Embedded Language)是一种嵌入在高级编程语言Scala的硬 ...
- scala占位符_的用法
占位符的用途颇多,先介绍几种常用的用法 1.作为"通配符",类似Java中的*.如import scala.math._2.:_*作为一个整体,告诉编译器你希望将某个参数当作参数序 ...
- Scala进阶之路-Scala中的枚举用法案例展示
Scala进阶之路-Scala中的枚举用法案例展示 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Scala中的枚举值和Java中的枚举值有点差别,不过使用起来也都差大同小异,我这 ...
- Scala入门4(_的用法)
从网上找了一篇博客,详细讲解了Scala下划线的用法,这里做保留 博客链接
- Scala中_(下划线)的常见用法
Scala中_(下划线)的常见用法 地址:https://www.jianshu.com/p/0497583ec538
随机推荐
- web.xml 中 classpath 写法说明
简单理解,classpath就是代表 /WEB-INF /classes/ 这个路径(如果不理解该路径,就把一个web工程发布为war包,然后用winrar查看其包内路径就理解啦) 常用的场景: ...
- Spring boot Junit Test单元测试
Spring boot 1.40 JUnit 4 需要依赖包 spring-boot-starter-test.spring-test 建立class,加上如下注解,即可进行单元测试,别的帖子里说要加 ...
- POJ 2567 Code the Tree & POJ 2568 Decode the Tree Prufer序列
题目大意:2567是给出一棵树,让你求出它的Prufer序列.2568时给出一个Prufer序列,求出这个树. 思路:首先要知道Prufer序列.对于随意一个无根树,每次去掉一个编号最小的叶子节点,并 ...
- Python学习笔记4—列表List
列表定义 Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. >>> a=['] >>> type(a) &l ...
- My97DatePicker设置,包括隐藏 清空,设置最大日期等 转载
My97DatePicker是一款非常灵活好用的日期控件.使用非常简单. 1.下载My97DatePicker组件包 2.在页面中引入该组件js文件: <script type=&quo ...
- jquery如何把一个html元素替换成另外一个html元素?
1.replaceWith( ) 使用括号内的内容替换所选择的内容. $("#div").replaceWith("<p id=&qu ...
- 事件处理程序中 this 的指向
js 高程 事件处理程序 章节原话(斜体表示): 13.2.1 HTML事件处理程序 在这个函数内部,this 值等于事件的目标元素,例如: <!-- 输出 "Click Me&quo ...
- centos7 安装kafka Manager
1.安装sbt编译环境 curl https://bintray.com/sbt/rpm/rpm |tee /etc/yum.repos.d/bintray-sbt-rpm.repo yum inst ...
- cocos2dx-draw绘制
[一]:函数 //1.设置绘制颜色 1.ccDrawColor4B("红","绿","蓝","透明"); //2.设 ...
- Ajax 常用资源
regular online:http://regex.larsolavtorvik.com/ json online:http://json.cn/ Prototype:http://prototy ...