HOWTO · Scala

Scala プログラミング言語の yield キーワード

この記事では、scala で yield キーワードがどのように使用されるかを示します。

この記事では、さまざまな例を使用して、Scala で yield キーワードを使用する方法を学習します。

yield キーワードは for ループで使用されます。for ループの各反復で、yield は記憶された値を生成します。

これは、for ループのバッファーとして機能します。for ループが繰り返されるたびに、アイテムがこのバッファーに追加されます。

for ループがすべての反復を終了すると、生成されたすべての値のコレクションが返されます。

返されるコレクションのタイプ。同じタイプの for ループが繰り返されていたため、ListList を生成し、MapMap を生成し、arrayarray を生成します。

yield の構文:

for() yield variable;

Scala の配列で yield キーワードを使用する

for ループを使用して配列のすべての要素を反復処理し、yield キーワードを使用して for ループの各反復で要素を格納します。

コード例:

object MyClass {
    def main(args: Array[String]) : Unit = {
        val array = Array(100,200,300,500,600)
        
        var buffer = for (i <- array if i > 200) yield i
        
        for(i<-buffer)
        {
            
            println(i) 
        } 
    }
}

出力:

300
500
600

Scala リストを使用した yield

for ループを使用して List のすべての要素を反復処理し、yield キーワードを使用して for ループの各反復で要素を格納し、それらに対して何らかの操作を実行します。

object MyClass {
    def main(args: Array[String]) : Unit = {
       val myList = List(1,2,3,4,5,6,7,8,9,10)
       
       var buffer = for (i <- myList) yield i*i*i
        println("Values from yield")
            for(i <- buffer) println(i)
    }
}

出力:

Values from yield
1
8
27
64
125
216
343
512
729
1000