📌  相关文章
📜  Scala Mutable SortedMap filter() 方法与示例(1)

📅  最后修改于: 2023-12-03 15:05:03.439000             🧑  作者: Mango

Scala Mutable SortedMap filter() 方法

filter() 方法是 Scala Mutable SortedMap 类中的方法,返回一个新的 SortedMap,它包含仅满足给定谓词的键/值对。

语法

下面是 filter() 方法的语法:

def filter(p: ((K, V)) ⇒ Boolean): SortedMap[K, V]
参数

filter() 方法接受一个谓词函数 p,该函数接受一个键/值对元组作为输入,并返回一个布尔值。元组的类型为 (K, V),其中 K 是键的类型,V 是值的类型。函数应该返回 true 如果需要保留该元组,并返回 false 否则。

返回值

filter() 方法返回一个新的 SortedMap,它包含仅满足给定谓词的键/值对。返回的 SortedMap 对象类型与调用该方法的原始对象类型相同。

示例

以下示例演示了 filter() 方法的用法:

import scala.collection.mutable

object MutableSortedMapTest {
   def main(args: Array[String]) {
      val sortedMap = mutable.SortedMap("John" -> 23, "Jane" -> 25, "Tom" -> 21)

      println("原始SortedMap:")
      for ((k, v) <- sortedMap) {
         println(k + " -> " + v)
      }

      println("\n年龄大于等于 23 的SortedMap:")
      val filteredMap = sortedMap.filter(p => p._2 >= 23)
      for ((k, v) <- filteredMap) {
         println(k + " -> " + v)
      }
   }
}

输出如下:

原始SortedMap:
Jane -> 25
John -> 23
Tom -> 21

年龄大于等于 23 的SortedMap:
Jane -> 25
John -> 23

在上面的示例中,我们创建了一个可变的 SortedMap 对象 sortedMap,它包含三个键值对。

我们使用 filter() 方法从原始 SortedMap 中过滤出年龄大于等于 23 的元素,并将它们存储在新的 SortedMap 对象 filteredMap 中。

最后,我们遍历 filteredMap 对象并将其元素输出到控制台中。