如何对Scala集合进行排序?

集合包含所有用于存储多个元素或元素集合(如数组,列表,集合,向量等)的数据结构。

尽管使用集合排序可以使程序员受益,但比较运算符非常有效。

为了对集合进行排序,我们提供了一些方法,在这里我们将学习如何使用它们,

1)使用排序方法

sorted方法用于对Scala中的集合进行排序。

语法:

    val sortedColl = Coll.sorted

程序:

object MyObject {

    def main(args: Array[String]) {

        val seq = Seq(92.23 , 43.12 , 31.2, 7.87)

    

        println("Unsorted Sequence: " + seq)   

    

        val sortedSeq = seq.sorted

        println("Sorted Sequence: " + sortedSeq)   

    

        val lang = Vector("Scala" ,"C" , "HTML" , "Python", "Java")

        println("Unsorted String Vector: " + lang)

    

        val sortedLang = lang.sorted

        println("Sorted String Vector: " + sortedLang)

}

}

输出结果

Unsorted Sequence: List(92.23, 43.12, 31.2, 7.87)

Sorted Sequence: List(7.87, 31.2, 43.12, 92.23)

Unsorted String Vector: Vector(Scala, C, HTML, Python, Java)Sorted String Vector: Vector(C, HTML, Java, Python, Scala)

2)使用sortWith()方法

sortWith()方法以所需的方式对集合中的元素进行排序。

    sortWith(condition)

程序:

object MyObject {

    def main(args: Array[String]) {

        val seq = Seq(92.23 , 43.12 , 31.2, 7.87)

        println("Unsorted Sequence: " + seq)   

        val sortedSeq = seq.sortWith(_>_)

        println("Sorted Sequence: " + sortedSeq)   

        val lang = Vector("Scala" ,"C" , "HTML" , "Python", "Java")

        println("Unsorted String Vector: " + lang)

        val sortedLang = lang.sortWith(_.length<_.length)

        println("Sorted String Vector: " + sortedLang)

    }

}

输出结果

Unsorted Sequence: List(92.23, 43.12, 31.2, 7.87)

Sorted Sequence: List(92.23, 43.12, 31.2, 7.87)

Unsorted String Vector: Vector(Scala, C, HTML, Python, Java)Sorted String Vector: Vector(C, HTML, Java, Scala, Python)

以上是 如何对Scala集合进行排序? 的全部内容, 来源链接: utcz.com/z/334666.html

回到顶部