【Flutter】入門!Dart基本「If、For」
If
Dartにおける条件文(if文)は、特定の条件が満たされた場合にコードブロックを実行するための制御構造です。Dartのif文は、単一の条件だけでなく、条件が複数ある場合や条件が満たされなかった場合の処理もサポートしています。
基本的なif文
if (condition) {
// 条件が真の場合に実行されるコード
} else {
// 条件が偽の場合に実行されるコード
}
条件が真の場合、最初のブロックが実行されます。条件が偽の場合、代わりにelseブロックが実行されます。
複数の条件を評価する
if (condition1) {
// 条件1が真の場合に実行されるコード
} else if (condition2) {
// 条件1が偽で条件2が真の場合に実行されるコード
} else {
// すべての条件が偽の場合に実行されるコード
}
複数の条件を評価する場合、最初に条件1が評価されます。条件1が真の場合、そのブロックが実行され、他の条件は評価されません。条件1が偽で条件2が真の場合、条件2のブロックが実行されます。どの条件も満たされない場合、elseブロックが実行されます。
簡潔な条件演算子
Dartは、条件が簡単な場合に三項演算子を使用することができます。
condition ? trueExpression : falseExpression
例えば:
int age = 18;
String message = (age >= 18) ? "成人" : "未成年";
ネストしたif文
if文はネストすることもできます。つまり、if文の中に別のif文を記述することができます。
if (condition1) {
if (condition2) {
// 条件1と条件2が両方真の場合に実行されるコード
}
}
if文をネストする場合、適切なインデントを使用してコードを整理することが重要です。
条件の組み合わせ
複数の条件を組み合わせる場合、論理演算子(&&や||)を使用して条件を結合できます。
if (condition1 && condition2) {
// 条件1と条件2が両方真の場合に実行されるコード
}
if (condition1 || condition2) {
// 条件1または条件2が真の場合に実行されるコード
}
Dartのif文は、プログラムのフローを制御するための基本的な構造です。条件に応じて特定のコードブロックを実行するための重要なツールです。
For
Dart言語におけるfor文は、繰り返し処理を行うための制御構造です。Dartでは複数の種類のforループが利用できます。
標準的なforループ
一般的なカウンターを使用して繰り返しを行うforループです。以下は基本的な構文です。
for (初期化; 条件式; 更新) {
// 繰り返しの本体
}
例:
for (var i = 0; i < 5; i++) {
print('Count: $i');
}
for-inループ
コレクション(リスト、セット、マップなど)の各要素に対して繰り返しを行うためのfor-inループです。
for (要素 in コレクション) {
// 繰り返しの本体
}
例:
var numbers = [1, 2, 3, 4, 5];
for (var number in numbers) {
print('Number: $number');
}
forEachメソッド
リストやセットなどのコレクションに対してforEachメソッドを使用して繰り返し処理を行うこともできます。
例:
var fruits = ['Apple', 'Banana', 'Orange'];
fruits.forEach((fruit) {
print('Fruit: $fruit');
});
whileループ
条件が満たされている間、繰り返し処理を行うwhileループです。
while (条件式) {
// 繰り返しの本体
}
例:
var count = 0;
while (count < 3) {
print('Count: $count');
count++;
}
do-whileループ
条件を最初に評価せず、処理を実行してから条件を評価するdo-whileループです。
do {
// 繰り返しの本体
} while (条件式);
例:
var value = 5;
do {
print('Value: $value');
value--;
} while (value > 0);
Dartのfor文はこれらのバリエーションを使用して、様々な繰り返し処理を実現するのに役立ちます。適切なforループを選択して、コードを効果的に構築してください。
continue、break
Dartのforループやif文内で使用されるcontinueとbreakは、制御フロー를 조작하는のに役立つ特別なキーワードです。
continueキーワードは、ループ内で現在のイテレーションをスキップして次のイテレーションに進むために使用されます。つまり、ループ内の特定の条件が満たされた場合にそのイテレーションをスキップし、次のイテレーションを開始します。
例えば、偶数の場合にのみ処理をスキップする場合を考えてみましょう
for (var i = 1; i <= 5; i++) {
if (i % 2 == 0) {
continue; // 偶数の場合、このイテレーションをスキップ
}
print('Number: $i');
}
上記のコードでは、2, 4の場合にcontinueが実行されて該当するイテレーションがスキップされます。
breakキーワードは、ループや制御構造を中断し、その位置から直ちに外側のコードブロックに移動するために使用されます。これはループを強制的に終了する際などに使用されます。
例えば、特定の条件が満たされた場合にループ全体を終了する場合を考えてみましょう
for (var i = 1; i <= 5; i++) {
if (i == 3) {
break; // iが3の場合、ループ全体を終了
}
print('Number: $i');
}
上記のコードでは、iが3の場合にbreakが実行され、その時点でループが終了します。
continueとbreakはコードの制御フローを制御するための強力なツールですが、過剰に使用するとコードが読みにくくなることがあります。適切なタイミングでこれらを使用して、コードをクリーンで理解しやすいものに保つことが大切です。
Discussion