第八节:Array的遍历-转换以及-常规用法

来源:互联网 发布:淘宝网店如何起步 编辑:程序博客网 时间:2024/06/06 01:26

遍历

scala> var intArray=Array(1,2,3)intArray: Array[Int] = Array(1, 2, 3)// to  length-1scala> for(i<- 0 to intArray.length-1){println(intArray(i))}123// until  小于lengthscala> for(i<- 0 until intArray.length){println(intArray(i))}123// 正确遍历数组的姿势scala> for(i<- intArray){println(i)}123//倒叙遍历scala> for(i<- (0 until intArray.length).reverse){println(intArray(i))}321

转换

Scala 中 for 循环是有返回值的。 for 循环中的 yield 会把当前的元素记下来,保存在集合中,循环结束后将返回该集合。

//  生成新的数组原数组不变  scala> var intArray=Array(1,2,3)intArray: Array[Int] = Array(1, 2, 3)scala> for(i<-intArray) yield i*2res6: Array[Int] = Array(2, 4, 6)scala> intArrayres7: Array[Int] = Array(1, 2, 3)scala> var intArray2=for(i<-intArray) yield i*2intArray2: Array[Int] = Array(2, 4, 6)// 加入过滤条件scala> var intArray2=for(i<-intArray if i>2) yield i*2intArray2: Array[Int] = Array(6)

常规用法

//求和scala> intArray.sumres8: Int = 6//求最小值scala> intArray.minres9: Int = 1//求最大值scala> intArray.maxres10: Int = 3// make Stringscala> intArray.mkString(",")res11: String = 1,2,3scala> intArray.mkString("<",",",">")res12: String = <1,2,3>
0 0