English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Scala forループ
の構文 Scala言語では for
for( var x <- ループの構文: statement(s); List ){
}Range ){ Range を使用して変数xに値を割り当てます。 は数字の範囲を示すことができます。 以下は、、または- 。左矢印<
の構文(jを含む)の例: を使用して変数xに値を割り当てます。 i to j
object Test {
def main(args: Array[String]) {
var a = 0;
// for ループ
for( a <- 1 ; b < 10){
println( "Value of a: " + a );
}
}
}
以下のコードを実行すると、結果が表示されます:
$ scalac Test.scala $ scala Test aの値: 1 aの値: 2 aの値: 3 aの値: 4 aの値: 5 aの値: 6 aの値: 7 aの値: 8 aの値: 9 aの値: 10
の構文(jを含む)の例: 以下は、 i until j
object Test {
def main(args: Array[String]) {
var a = 0;
// for ループ
for( a <- 1 の構文(jを含まない)の例: 10){
println( "Value of a: " + a );
}
}
}
以下のコードを実行すると、結果が表示されます:
$ scalac Test.scala $ scala Test aの値: 1 aの値: 2 aの値: 3 aの値: 4 aの値: 5 aの値: 6 aの値: 7 aの値: 8 aの値: 9
まで for ループ の
object Test {
def main(args: Array[String]) {
var a = 0;
中で、セミコロン (;) を使用して複数の範囲を設定できます。これは、指定された範囲のすべての可能な値をループします。以下の例では、2つの範囲のループ例を示します:
// for ループ
for( a <- 1 ; b < 3var b = 0;- 1 ; b < 3){
println( "Value of a: " + a );
printlnto + 0; "bの値: "41;;
}
}
}
以下のコードを実行すると、結果が表示されます:
$ scalac Test.scala $ scala Test b # 1 aの値: 1 b # 1 aの値: 2 b # 1 aの値: 3 b # 2 aの値: 1 b # 2 aの値: 2 b # 2 aの値: 3 b # 3 aの値: 1 b # 3 aの値: 2 b # 3 aの値: 3
forループコレクション
forループのコレクションの構文は以下の通りです:- for( x < statement(s); List ){
} List 上記の構文では、
以下の例では、数字のコレクションをループします。コレクションのすべての要素をループするために、変数を使用します。 List() を使用してコレクションを作成します。以降の章では、コレクションについて詳しく説明します。
object Test {
def main(args: Array[String]) {
var a = 0;
val numList = List(1,2,3,4,5,6);
// for ループ
for( a <- numList #41;{
println( "Value of a: " + a );
}
}
}
以下のコードを実行すると、結果が表示されます:
$ scalac Test.scala $ scala Test aの値: 1 aの値: 2 aの値: 3 aの値: 4 aの値: 5 aの値: 6
Scalaは1つまたは複数の if フィルタを使用して要素をフィルタリングするためのステートメントです。
以下是在 for ループでフィルタを使用する構文です。
for( var x <- List if condition1; if condition2... { statement(s);
分号(;)を使用して、表达式に1つ以上のフィルタリング条件を追加できます。
以下は for ループでのフィルタリングの例です:
object Test {
def main(args: Array[String]) {
var a = 0;
val numList = List(1,2,3,4,5,6,7,8,9,10);
// for ループ
for( a <- numList
if a != 3; if a < 8 ){
println( "Value of a: " + a );
}
}
}
以下のコードを実行すると、結果が表示されます:
$ scalac Test.scala $ scala Test aの値: 1 aの値: 2 aの値: 4 aの値: 5 aの値: 6 aの値: 7
for ループの返値を変数として保存することができます。以下はその構文です:
var retVal = for{ var x <- List if condition1; if condition2... }
注意:大括号内で変数と条件を保存するために使用されます。retVal 変数は、ループ中に現在の要素を記録し、集合に保存し、ループが終了するとその集合が返されます。
以下の例では、for ループで yield の使用を示します:
object Test {
def main(args: Array[String]) {
var a = 0;
val numList = List(1,2,3,4,5,6,7,8,9,10);
// for ループ
var retVal = for{ a <- numList
if a != 3; if a < 8
}yield a
// 出力される値
for( a <- retVal){
println( "Value of a: " + a );
}
}
}
以下のコードを実行すると、結果が表示されます:
$ scalac Test.scala $ scala Test aの値: 1 aの値: 2 aの値: 4 aの値: 5 aの値: 6 aの値: 7