📜  Scala Stack filter() 方法示例(1)

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

Scala Stack filter() 方法示例

Scala Stack 类是一个后进先出(Last-In-First-Out,LIFO)数据结构,类似于堆栈(Stack)的概念。Scala Stack 可以存储任何类型的元素,但是插入和删除元素只能在堆栈的顶端进行。

在 Scala Stack 类中,filter() 方法用于过滤栈中的元素,并返回一个包含符合条件的元素的新的栈。

语法

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

def filter(p: (A) ⇒ Boolean): Stack[A]
参数

参数说明如下:

  • p: 是一个函数,该函数接受一个元素,并返回一个布尔值,表示该元素是否符合条件。
返回值

该方法返回一个包含符合条件的元素的新的栈。

示例

以下是 Scala Stack filter() 方法的示例:

import scala.collection.mutable.Stack

object Main {
   def main(args: Array[String]) {
      val stack = Stack(1, 2, 3, 4, 5)

      // 使用 filter() 方法过滤栈中的元素
      val newStack = stack.filter(_ % 2 == 0)

      println("原始栈: " + stack)
      println("过滤后的栈: " + newStack)
   }
}

输出结果为:

原始栈: Stack(1, 2, 3, 4, 5)
过滤后的栈: Stack(4, 2)

在上面的示例中,我们定义了一个包含整型元素的栈 stack,然后使用 filter() 方法过滤掉所有的奇数元素,并将结果存储在 newStack 中。最后,我们输出了原始栈和过滤后的栈。

总结

Scala Stack 类的 filter() 方法用于过滤栈中的元素,并返回一个包含符合条件的元素的新的栈。该方法接受一个函数作为参数,该函数接受一个元素,并返回一个布尔值,表示该元素是否符合条件。