Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ DartにおけるForループ | Dartのループ
Dart入門

DartにおけるForループ

メニューを表示するにはスワイプしてください

forループは、特定のコードブロックを複数回繰り返す構造。 例えば、クラス内の__32__人の生徒それぞれの成績を確認したい場合、__1__から__32__までループする。

forループは、既知の回数だけコードの一部を繰り返す際に使用。

例:

  • 学校の生徒の平均年齢の計算。プログラマーが学校の生徒数を把握していなくても、コンピュータはlengthListプロパティを使って対応可能;
  • __1__から__500__までの偶数の出力;
  • テストの最高点を見つけるなど、数値のList内を検索する場合。コンピュータはList内の成績数を把握しているため、forループが適切。

For-ループの構文

以下のサンプルコードを使って、forループの構文を確認:

for (Initialization; Condition; Increment/Decrement) {
  // Сode block
}

Dartのforループは3つの部分から構成:

  • Initialization:ループの繰り返し回数を制御する変数の初期化。この例では、変数名__i__を__0__で初期化;

  • Condition:ループを継続するかどうかを判定する条件。この例では、__i__の値が__5__未満かどうかを判定;

  • Increment__または__Decrement:各ループの最後にカウンターに対して行う操作。

forループ内の各命令はセミコロン(;)で区切られています。

この例では、forループを使ってメッセージを5回コンソールに出力します。動作は以下の通りです。

main.dart

main.dart

12345
void main() { for (int day = 1; day <= 7; day++) { print("Day $day: Time to exercise!"); } }

シンプルなワークアウトリマインダーを作成する場面を想定します。このコードは各日に運動を促すメッセージを出力します。

  • int day = 1: 変数dayを1で初期化(最初のワークアウト日を表す);
  • day <= 7: dayが7以下の間ループを継続(一週間分);
  • day++: 各リマインダー後にdayを1増加;
  • print("Day $day: Time to exercise!"): "Day 1: Time to exercise!""Day 2: Time to exercise!"のように7日目まで出力。

for-inループの構文

Dartにおけるfor-inループの動作を、シンプルな構造で示します:

for (Type variable in collection) {
  // Code to execute for each item
}
  • for: ループを開始するキーワード
  • (Type variable in collection): ループの構造
    • Type: コレクション内の各要素のデータ型(例: String, int
    • variable: 現在の要素を保持する一時変数
    • in collection: ループが繰り返し処理するコレクション(リスト)
  • {}: 各要素ごとに実行されるコードを含むループ本体

forループを使うことで、リストを簡単に操作可能。

例を見てみましょう:

main.dart

main.dart

123456
void main() { List<String> fruits = ["apple", "banana", "orange"]; for (String fruit in fruits) { print(fruit); } }

このコードは、異なるfruits"apple""banana""orange")を表す文字列のリストを定義しています。リストは変数fruitsに格納されています。

for (String fruit in fruits) {

for-inループを使って、fruitsリスト内の各要素を順番に処理します。このループは自動的に各フルーツを1つずつ取り出し、変数fruitに代入します。ここで、fruitは各イテレーション中の現在のフルーツの値を保持します。

print(fruit); 

ループ内では、現在のfruitがコンソールに出力されます。ループは次のフルーツに進み、リスト内のすべての要素が出力されるまで繰り返されます。

この方法は、ショッピングリストの表示やユーザーが選択したアイテムの処理など、リストを扱う際に便利です。

製品名のリストが与えられています。ループ内の条件を完成させて「o」を含む製品のみが出力されるようにしてください。

  1. ループ内のif条件を完成させて、製品名が"o"を含むかどうかを確認してください。
  2. "o"(大文字・小文字問わず)を含む製品のみが出力されるようにしてください。
  3. 期待される出力:
Laptop
Headphones
Mouse
Keyboard
Monitor
main.dart

main.dart

12345678910111213141516
void main() { List<String> products = [ "Laptop", "Headphones", "Mouse", "Keyboard", "USB Cable", "Monitor" ]; for (String product in products) { if (___) { // Complete the condition print(product); } } }

文字列に.contains("o")が含まれているかどうかを確認するには、"o"を使用します。

main.dart

main.dart

12345678910111213141516
void main() { List<String> products = [ "Laptop", "Headphones", "Mouse", "Keyboard", "USB Cable", "Monitor" ]; for (String product in products) { if (product.toLowerCase().contains("o")) { // Check if "o" is in the product name print(product); } } }
すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 4.  4

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 4.  4
some-alt