码迷,mamicode.com
首页 > 其他好文 > 详细

这一篇里面有很多关于scala的list的操作的好的知识

时间:2018-03-10 01:32:23      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:pac   元素   current   padding   .com   dex   定义   头部   html   

https://www.cnblogs.com/weilunhui/p/5658860.html

 

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
scala> val = List(1)
a: List[Int] = List(1)
 
scala> val = List(2)
b: List[Int] = List(2)
 
scala> val = a ++ b
c: List[Int] = List(12)
 
scala> val = List(‘a‘)
d: List[Char] = List(a)
 
scala> val = c ++ d
e: List[AnyVal] = List(12, a)

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

1
2
3
4
5
6
7
8
scala> val = List(1)
x: List[Int] = List(1)
 
scala> val = LinkedList(2)
y: scala.collection.mutable.LinkedList[Int] = LinkedList(2)
 
scala> var = x ++: y
z: scala.collection.mutable.LinkedList[Int] = LinkedList(12//y是LinkedList
1
2
scala> var = y ++: x  //使用x的类型
z: List[Int] =List(12)

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

1
2
3
4
5
6
7
8
scala> val = List(1)
x: List[Int] = List(1)
 
scala> val = 2 +: x
y: List[Int] = List(21)
 
scala> println(x)
List(1)

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

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

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

1
2
3
4
5
6
7
8
scala> val = List(1)
a: List[Int] = List(1)
 
scala> val = :2
b: List[Int] = List(12)
 
scala> println(a)
List(1)

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

1
1 :: List(23= List(23).::(1= List(123)

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

1
List(12::: List(34= List(34).:::(List(12)) = List(1234)

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

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

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

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

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

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

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

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

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

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

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

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

 

这一篇里面有很多关于scala的list的操作的好的知识

标签:pac   元素   current   padding   .com   dex   定义   头部   html   

原文地址:https://www.cnblogs.com/charlesblc/p/8537059.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!