制御フロー
if/else式、when文、forループ、whileループを使ってKotlinのプログラムロジックを制御します。
「制御フロー」はCoddyKit上の無料Android Academyレッスンです。 これはレッスン3/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはAndroid Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Android Academyコースには全3レッスンが含まれています。
制御フローの概要
制御フローを使うと、プログラムで判断を行い、処理を繰り返せます。
- if/else — 複数の経路から選択します
- when — 値を複数のケースと照合します
- for — 範囲やコレクションに対して処理を繰り返します
- while — 条件がtrueの間、処理を繰り返します
式としてのif/else
Kotlinではif/elseは式です。値を返すため、結果を直接代入できます。
fun main() {
val score = 75
// Traditional style
if (score >= 60) {
println("Pass")
} else {
println("Fail")
}
// Expression style
val grade = if (score >= 90) "A"
else if (score >= 75) "B"
else if (score >= 60) "C"
else "F"
println("Grade: $grade")
}when式
whenは、Kotlinでswitch/caseを置き換える強力な機能です。
- 整数に限らず、あらゆる値と照合できます
- 式として使えます(値を返します)
else分岐で、それ以外のすべてのケースを処理できます
whenの実践
whenを使うと、複数のケースをすっきり処理できます。
fun main() {
val day = 3
val name = when (day) {
1 -> "Monday"
2 -> "Tuesday"
3 -> "Wednesday"
4, 5 -> "Thu or Fri" // multiple values
6, 7 -> "Weekend"
else -> "Unknown"
}
println(name) // Wednesday
// when with a range
val temp = 28
val feel = when {
temp < 10 -> "Cold"
temp < 25 -> "Comfortable"
else -> "Hot"
}
println(feel) // Hot
}forループ
forを使って、範囲、リスト、その他のコレクションを反復処理します。
1..5— 1から5までの範囲(5を含む)1 until 5— 1から4までの範囲(終端の5を含まない)10 downTo 1— 10から1までカウントダウンします1..10 step 2— 2つずつ値を飛ばします
forループの例
範囲やコレクションを反復処理します。
fun main() {
// Range
for (i in 1..5) print("$i ") // 1 2 3 4 5
println()
// Until (excludes end)
for (i in 0 until 3) print("$i ") // 0 1 2
println()
// Step
for (i in 0..10 step 3) print("$i ") // 0 3 6 9
println()
// List
val fruits = listOf("Apple", "Banana", "Cherry")
for (fruit in fruits) println(fruit)
}whileとdo-while
whileは条件がtrueである間、処理を繰り返します。do-whileは条件を確認する前に、本体を少なくとも1回実行します。
whileループの例
whileを使ってカウントダウンします。
fun main() {
var count = 5
while (count > 0) {
println("Count: $count")
count--
}
println("Done!")
// do-while runs body first
var x = 0
do {
println("x = $x")
x++
} while (x < 3)
}breakとcontinue
次のキーワードでループの実行を制御します。
break— ループをすぐに終了しますcontinue— 現在の反復処理をスキップして、次へ進みます
Kotlinは、ネストしたループのためのラベル付きbreakもサポートしています:break@outer。
クイックチェック
1 until 5は何を生成しますか?
まとめ:制御フロー
Kotlinでプログラムの流れを制御する方法を学びました。
- 式としての
if/else— 結果を直接代入できます when— switch/caseをすっきり置き換えます- 範囲、
until、step、downToと組み合わせたfor whileとdo-while
次は、Kotlinの最大の特長であるnull安全性です。
よくある質問
「制御フロー」レッスンは無料ですか?
はい。「制御フロー」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Android Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Android Academyコースには全3レッスンが含まれています。
「制御フロー」で何を学びますか?
if/else式、when文、forループ、whileループを使ってKotlinのプログラムロジックを制御します。 ブラウザで直接実行するハンズオンコードでAndroid Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Android Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのAndroid Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/3です。
「制御フロー」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このAndroid Academyレッスンでコードを書いて実行できますか?
はい。すべてのAndroid Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。