
見てくれ~while文での繰り返しをマスターしたぞい!



どれどれ、見てみようか!





こ、これは危険だ…。



何が危険なの!完璧なコード!え~い、実行実行!



あれ、何も表示されないよ?



DartPadが無限ループを感知したからだね。while文では特に無限ループに気を付ける必要があるんだ。



今回のケースだとfor文を使った方がきれいで安全に書けるから、それを学んでいこうか!
今回はWhile文と違った繰り返し処理、for文を解説していきます!
前回のDart入門記事はこちら!


【Dart】for文とは



さっきのプログラムはループの中で1ずつ値を増やす処理を入れないと無限ループになるね。



無限ループっていうのはループから抜け出せなくなること?



そう!常に条件を満たしてしまうからループを抜ける方法がないんだ。



じゃあきちんとループの中で値を増やしてあげたりしないといけないんだね。忘れそう~。



値を一定の変化、例えば一回の繰り返し処理で1ずつ増やす、などをしたい場合はwhile文よりfor文が適しているよ!



よん!



それはfourね。
for文はループ処理を一回行うごとに、変数に一定の変化を与えて、条件判定して次のループをするか判断する繰り返し処理です。



百聞は一見にしかーず!
実際に見てみましょう。


結果はこうなります。





うーんなんとなくiが10まで増え続けてるのはわかるけど、丸かっこの中がよくわからない~。



じゃあ書き方を細かく紐解いてみようか!
【Dart】for文の書き方・使い方
for文は初期化した変数を、ループするたびに増加させるなどの変化をさせ、条件を満たし続ける間繰り返す構文です。
for(初期化式;条件式;変化式){
繰り返す処理
}



式多すぎ~!
まず初期化式を見ていきましょう。これはfor文内で扱う変数の宣言と初期化を行います。
Dartでは変数の宣言はfor文の外でも行うことができます。
次に条件式です。この条件式を満たす間は繰り返し処理を続けます。中かっこ内の最後の処理までいったらこの条件式を見て評価し、繰り返すか抜けるかを判断します。
最後に変化式です。処理を繰り返す度にこの処理を実行します。初期化式で宣言した変数をインクリメントさせたりするケースが多いですが、特に初期化した変数を使わなければならないというわけでもありません。
中かっこの最後の処理が終わったらこの変化式を実行します。条件式の評価前に行われます。
これを踏まえて先ほどのfor文をもう一度見てみましょう。





これは変数iを初期値を1で宣言して、繰り返す度に1ずつ増やしていって、iが10を超えたら繰り返し処理を終わる、ということだね!



そう!いろいろ書く制約がある分while文より間違いにくく、見やすく書けるケースも多いよ!
for文でリストを操作してみよう!



前回while文で書いてみたリスト操作をfor文に書き直してみよう!
前はこんな感じだったね。





これをfor文でだね!え~い!


結果はこうなります。





よくできたね!結果は同じだけどfor文の方がコードがすっきりするね!



いろいろ最初に書かなきゃならない分書きもらしが少なくなるのがグッド~!
for文はDartでも繰り返し処理の王道!



while文の方がわかりやすいけど、for文は使いこなせれば便利そうだね!



そうだね!規則性のある変化ならfor文、などそれぞれ向き不向きがあるからいろいろ使ってみて感触を得てみよう!
■参考文献
次回のDart入門記事はこちら!



-300x158.png)







コメント