while文とは
while (条件){ 実行される処理 } |
- 条件がtrueの間、内部の処理を繰り返します。
- 条件がfalseの場合、ループ処理を終了します。
- 最初の条件の判定でfalseの場合、ループは1回も実行しません。
- 処理に、条件をfalseにするロジックがないと無限ループになるので注意が必要です。
while文のサンプル
fun main() {
var i = 0
while (i < 5) {
println(i) //0,1,2,3,4が出力される
i++
}
}
5行目は、値が5より小さい間、処理を繰り返します。
7行目は、条件になる値を加算しています。
while文 ループを抜ける(break)
fun main() {
var i = 0
while (true) {
if (i == 3) {
break
}
println(i) //0,1,2が出力される
i++
}
}
7行目のbreakは、while文を抜けます。
5行目は、条件をtrueにしています。このサンプルでは7行目のbreakがないと無限ループになるので注意して下さい。
while文 2重ループを抜ける(ラベル)
fun main() {
var i = 0
while1@ while (true) {
while (true) {
if (i == 3) {
break@while1
}
println(i) //0,1,2が出力される
i++
}
}
println("終了") //出力される
}
3,4行目にwhileがある2重ループです。while1はラベルです。
6行目のbreakとラベルで外側のwhile文を抜けます。
while文 ループの先頭に戻る(continue)
fun main() {
var i = 0
while (i < 5) {
if (i == 3) {
i++
continue
}
println(i) //0,1,2,4が出力される
i++
}
}
8行目のcontinueは、次は5行目を実行します。そのため10行目は実行されません。
このサンプルでは7行目の加算がないと無限ループになるので注意して下さい。
do...while文とは
do { 実行される処理 } while (条件); |
- 条件がtrueの間、処理を繰り返します。
- 条件がfalseの場合、ループ処理を終了します。
- 必ず1回は処理が実行されます。
- 処理に、条件をfalseにするロジックがないと無限ループになるので注意が必要です。
do...while文のサンプル
fun main() {
var i = 0
do {
println(i) //0,1,2,3,4が出力される
i++
} while (i < 5)
}
8行目は、値が5より小さい間、処理を繰り返します。
do...while文 ループを抜ける(break)
fun main() {
var i = 0
do {
if (i == 3) {
break
}
println(i) //0,1,2が出力される
i++
} while (true)
}
7行目のbreakは、do...while文を抜けます。
11行目は、条件をtrueにしています。このサンプルでは7行目のbreakがないと無限ループになるので注意して下さい。
do...while文 2重ループを抜ける(ラベル)
fun main() {
var i = 0
dowhile1@do {
do {
if (i == 3) {
break@dowhile1
}
println(i) //0,1,2が出力される
i++
} while (true)
} while (true)
println("終了") //出力される
}
3,4行目にdoがある2重ループです。dowhile1はラベルです。
6行目のbreakとラベルで外側のdo-while文を抜けます。
do...while文 ループの先頭に戻る(continue)
fun main() {
var i = 0
do {
if (i == 3) {
i++
continue
}
println(i) //0,1,2,4が出力される
i++
} while (i < 5)
}
8行目のcontinueは、次は12行目を実行します。そのため10行目は実行されません。
このサンプルでは7行目の加算がないと無限ループになるので注意して下さい。
比較演算子
比較演算子は、2つの値を比べて真偽値(true/false)を返します。
条件を満たしていればtrue,そうでない場合はfalseです。
Javaとの違いは、===と!==があります。
比較演算子 | 説明 |
---|---|
a == b | aとbの値は等しい |
a != b | aとbの値は等しくない |
a > b | aはbより大きい |
a >= b | aはbより大きい または 等しい |
a < b | aはbより小さい |
a <= b | aはbより小さい または 等しい |
a===b | aとbのインスタンスの参照は同じ |
a!==b | aとbのインスタンスの参照は異なる |
関連の記事