Scala Iterator indexWhere() 方法及示例

Scala Iterator indexWhere() 方法及示例

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

  • 定义:
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

这里,给定的谓词被Iterator在第三个位置的值所满足,即索引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

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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程