scala reduce 图解

文章目录

scala reduce 集合操作图解

// Scala program to
// print maximum value
// using reduce()
 
// Creating object
object GfG
{
     
// Main method
def main(args:Array[String])
{
    // source collection
    val collection = List(1, 3, 2, 5, 4, 7, 6)
 
    // finding the maximum valued element
    val res = collection.reduce((x, y) => x max y)
 
    println(res)
    //  7 
}
}

scala reduce 图解


// Scala program to
// print average
// using map() and reduce()
 
//Creating object
object GfG
{
     
// Main method
def main(args:Array[String])
{
    // source collection
    val collection = List(1, 5, 7, 8)
 
    // converting every element to a pair of the form (x,1)
    // 1 is initial frequency of all elements
    val new_collection = collection.map(x => (x,1))
 
    /*
    List((1, 1), (5, 1), (7, 1), (8, 1))
    */
 
    // adding elements at corresponding positions
    val res = new_collection.reduce( (a,b) => ( a._1 + b._1,
                                            a._2 + b._2 ) )
    /*
    (21, 4)
    */
 
    println(res)
    println("Average="+ res._1/res._2.toFloat)
}
}

scala reduce 图解

上一篇:Scala 速通语法(七)| 特质


下一篇:【Scala】数据结构(容器,列表,集合,映射,迭代器、数组、元组)