第6节:scala中数组的操作运算

1.partitions本身也是个集合






package croy

import scala.collection.mutable.ArrayBuffer
import scala.util.Sorting

object HelloArrayOps {
  def main(args: Array[String]): Unit = {
    //val array=new Array[Int](5)
    //    val array=Array[Int](1,2,3,4,5)
    //val array=Array.apply(1,2,3,4,5)
    val array = Array(1, 2, 3, 4, 5)
    array(0) = 10
    for (item <- array) print(item)
    println
    val arrbuf = ArrayBuffer[Int]()
    //    arrbuf+=1
    //     arrbuf+=2
    arrbuf += (4, 5, 6, 7)
    for (item <- arrbuf) print(item)
    arrbuf ++= Array(1, 2, 3)
    for (item <- arrbuf) print(item+"###") //ArrayBuffer默认是在末尾增加元素,效率
    //非常高
    //在指定位置增加參數
    arrbuf.insert(arrbuf.length - 1, 66, 8888)//在数组倒数第二位加入元素8888
    arrbuf.remove(2) //刪除元素6
    arrbuf.toArray //多綫程時會转换出Array
    println
    for (item <- arrbuf) print(item)
    println
    for (i <- 0 until array.length) print(i + " ")//从0提取到array最后一个元素
    println
    for (i <- 0 until (array.length, 2)) print(i + " ")//从0提取到array第二个元素
    println
    for (i <- (0 until array.length).reverse) print(i + " ")
    println
    println("sum=" + array.sum)
    println("Max=" + array.max)
    Sorting.quickSort(array) //升序排序
    println("排序=" + array.mkString("--"))
    println(array.mkString("*****", ",", "===="))//前面加上***后面加上=== 用,号隔开

    println
    val arr=Array(0,2,4,6,8)
    val arradd = for (it <- arr) yield it + 1 //yield可以完成个表达式,随便写
    print(arradd.mkString("_"))
    println
    val arreven = for (it <- arr if it % 2 == 0) yield it
    print(arreven.mkString(","))
    println
    println(arr.filter { x => x % 2 == 0 }.mkString(" ")) //=>关系符号,从左向右
    println(arr.filter { _ % 2 == 0 }.mkString(" "))
    println(arr.filter { _ % 2 == 0 }.map { _ * 10 }.mkString(" "))
    println(arr.filter(_ % 2 == 0).mkString(" "))
  }
}

输出结果:

102345
45674###5###6###7###1###2###3###
457126688883
0 1 2 3 4 
0 2 4 
4 3 2 1 0 
sum=24
Max=10
排序=2--3--4--5--10
*****2,3,4,5,10====


1_3_5_7_9
0,2,4,6,8
0 2 4 6 8
0 2 4 6 8
0 20 40 60 80
0 2 4 6 8

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值