LoginSignup
1

Kotlinのfor文

Posted at

for文の書き方

Kotlinでのfor文は下記のような構成である。

    for(変数 in A..Z) {
         // 処理
    }

A..Zの部分には、『0..26』のように、ループさせたい回数を記載する。
変数には最初ののループ時に指定した範囲の最小の値が格納されている。ループ処理が実行されるたびにインクリメントする。

    //Java
    for(int i = 0 ; i<=5; i++){
        System.out.println(i + "回目");
    }

    //Kotlin
    for (i in 0..5) {
        println(i.toString() + "回目")
    }

// 実行結果
0回目 
1回目
2回目
3回目
4回目
5回目

「..」の部分には、「step」や「downTo」、「until」を記載が可能である。

step

任意の数ずつ変数の値を増やしたい場合に使用する。
    for(変数 in A..Z step 値) {
         // 処理
    }

範囲指定した後に「step 値」を記載することで、記載した数ずつ値が増加していく。
実際に記載すると下記となる。

    for(i in 0..5 step 2) {
        println(i.toString() + "回目")
    }

// 実行結果
0回目
2回目
4回目

0から始まり、0+2、2+2と iの値が5になるまで繰り替えしている。

downTo

変数の値をデクリメントさせる場合に使用する。
    for(i in A downTo Z) {
        // 処理
    }

「..」を記載していたが、この部分が「downTo」となる。
実際に記載すると下記となる。

    for(i in 5 downTo 0) {
        println(i.toString() + "回目")
    }

 // 実行結果
 5回目
 4回目
 3回目
 2回目
 1回目
 0回目

5から始まり、1ずつ数を減らしていく。
2ずつ減らしたい場合等は、上記で記載した「step」と組み合わせる。

    for(i in 5 downTo 0 step 2) {
        println(i.toString() + "回目")
    }

// 実行結果
5回目
3回目
1回目

until

範囲の最後の値を含めない場合に使用する。
    for(変数 in A until Z) {
        // 処理
    }

「..」を記載していたが、この部分が「until」となる。
実際に記載すると下記となる。

    for (i in 0 until 5) {
        println(i.toString() + "回目")
    }

 // 実行結果
 0回目
 1回目
 2回目
 3回目
 4回目

untilを使用せず、0..4でも同じ結果が取得できる。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
1