这周进行了Scala函数的学习,我对这周学习的函数进行了自我小结。
++ 这个函数用来执行合并集合操作,会有返回值,返回一个新数组,新数组包含左右两个集合对象的内容。
scala> val a = Array(2,3)
a: Array[Int] = Array(2, 3)
scala> val b = Array(5,6)
b: Array[Int] = Array(5, 6)
scala> a++b
res2: Array[Int] = Array(2, 3, 5, 6)
++:此方法和++这个功类似,但是冒号后面的数据类型操控着返回结果的类型,举例如下
scala> val a = Array(2,3)
a: Array[Int] = Array(2, 3)
scala> val b = List(5,6)
b: List[Int] = List(5, 6)
scala> a++:b
res0: List[Int] = List(2, 3, 5, 6)`
**+: **在数组前面添加一个元素,有返回值,会返回新的数组
**:+**在数组末尾添加一个元素,有返回值,会返回新的数组
scala> a
res3: Array[Int] = Array(2, 3)
scala> 1+:a
res4: Array[Int] = Array(1, 2, 3)
scala> a:+4
res8: Array[Int] = Array(2, 3, 4)
/: 对数组中所有元素进行遍历操作,foldLeft的简写,顺序是从左到右
:\ 对数组中所有元素进行遍历操作,foldRight的简写,顺序是从右到左
scala> val a = Array(1,2,3,4)
a: Array[Int] = Array(1, 2, 3, 4)
scala> (10 /: a)(_+_)
res10: Int = 20 //(((10+1)+2)+3)+4
scala> (a:\ 10)(_+_)
res17: Int = 20//1+(2+(3+(4+10)))
foldLeft同/:
scala> a
res0: List[Int] = List(1, 2, 3)
scala> a.foldLeft(10)(_+_)
res5: Int = 16//10+1+2+3
foldRight同 \ :
scala> a
res0: List[Int] = List(1, 2, 3)
scala> a.foldRight(10)(_-_)
res7: Int = -8//1-(2-(3-10))
本文深入探讨Scala中的函数操作,包括集合合并(++)、元素添加(+:与:+)、以及数组元素遍历(/:与)。通过实例展示了这些操作的具体用法,如合并数组、在数组前或后添加元素,以及如何使用foldLeft和foldRight进行数组元素的遍历运算。
&spm=1001.2101.3001.5002&articleId=108495092&d=1&t=3&u=1b7490cd5fe344c3a3e1bf165a74c7b6)
328

被折叠的 条评论
为什么被折叠?



