📜  带有示例的 Scala 迭代器 indexWhere() 方法

📅  最后修改于: 2022-05-13 01:54:52.322000             🧑  作者: Mango

带有示例的 Scala 迭代器 indexWhere() 方法

indexWhere()方法属于 Scala 中迭代器类的具体值成员。此方法将找到满足所述谓词的迭代器的第一个值的位置。

  • 方法定义:
    def indexWhere(p: (A) => Boolean): Int
    

    其中,p 是所陈述的谓词。

  • 返回类型:
    它返回满足所述谓词的迭代器的第一个值的索引,如果迭代器中的值都不满足所述谓词,则此方法返回-1。

例子 :

// Scala program of indexWhere()
// method
  
// Creating object
object GfG
{ 
  
    // Main method
    def main(args:Array[String])
    {
      
        // Declaring an iterator
        val iter = Iterator(3, 1, 4, 9, 6)
          
        // Applying indexWhere method
        // with a predicate
        val result = iter.indexWhere(x=>{x % 2==0})
          
        // Displays output
        println(result)
  
    }
} 
输出:
2

在这里,给定的谓词由迭代器在第三个位置的值满足,即索引 2,因此返回 2。
例子 :

// Scala program of indexWhere()
// method
  
// Creating object
object GfG
{ 
  
    // Main method
    def main(args:Array[String])
    {
      
        // Declaring an iterator
        val iter = Iterator(3, 1, 7, 9, 15)
          
        // Applying indexWhere method
        // with a predicate
        val result = iter.indexWhere(x=>{x % 2==0})
          
        // Displays output
        println(result)
  
    }
}     
输出:
-1

在这里,迭代器的任何值都不满足所述谓词,因此在这种情况下返回-1。