DartにおけるForループ
メニューを表示するにはスワイプしてください
forループは、特定のコードブロックを複数回繰り返す構造。
例えば、クラス内の__32__人の生徒それぞれの成績を確認したい場合、__1__から__32__までループする。
forループは、既知の回数だけコードの一部を繰り返す際に使用。
例:
- 学校の生徒の平均年齢の計算。プログラマーが学校の生徒数を把握していなくても、コンピュータは
lengthのListプロパティを使って対応可能; - __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
12345void 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
123456void 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」を含む製品のみが出力されるようにしてください。
- ループ内の
if条件を完成させて、製品名が"o"を含むかどうかを確認してください。 "o"(大文字・小文字問わず)を含む製品のみが出力されるようにしてください。- 期待される出力:
Laptop
Headphones
Mouse
Keyboard
Monitor
main.dart
12345678910111213141516void 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
12345678910111213141516void 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); } } }
フィードバックありがとうございます!
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください