Scala学习笔记(六)----数组,循环,排序

本文介绍了Scala中的foldLeft和foldRight函数的使用方法,并通过示例展示了如何利用这些函数进行数组的最大值选择及累加操作。此外,还展示了如何使用foreach进行数组元素的条件筛选输出以及数组的排序和输出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

直接上代码 注意点写在注释里了

//foldLeft(x)(option)表示对该数组从左往右开始遍历,依次和x做option操作
    //如下函数表示,对input数组(input:Int* 表示可变参数)进行挑选最大值操作
    //还可以这样写(1 to 100).foldLeft(0)(_+_)表示对数组(1 to 100)进行累加操作
    //foldRight就是从右往左遍历
    def function(input: Int*) = input.foldLeft(input(0))(Math.max)//Math.max外面的()改成{}也可以
    println(function(1, 2, 3, 4, 5, 6, 7))
    def fun(input:Array[String]): Unit =
    {
      input.foreach((x:String)=>if(x == "I")println(x))//input数组循环输出
    }
    val input : Array[String] = new Array[String](3)  //Scala新建数组
    input(0) = "I"
    input(1) = "LOVE"
    input(2) = "YOU"
    fun(input)

    input.sortWith(_>_).foreach(println)  //将input数组排序后输出
    for(i <- 0 until 2) println(i)        //数组输出的另一种赋值,其中until 可以 换为to,两者区别就是前者不包含末尾,后者包含
                                          //<- 可以理解为 in 可以如此用:input  <- Set("test","good")



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值