‫この動画では
‫これからdo whileループを見ていきますが､ 他のループと違うのは､ 最初に条件をチェックするのではなく､
‫最初にコードを実行することです｡
‫デュー・ループとも呼ばれる｡
‫それでは､ do whileループを作成して､ その動きを見てみましょう｡
‫そこでまず､ 初期ユーザーかカウンター変数が必要で､ そのカウンターを呼び出すことにします｡
‫それからdoキーワードと中括弧の中に私のボディ､ 私のコードボディがあります｡ そしてここではconsole
‫dot right lineを使って､ カウンターを書き出したり､ カウンターをマシンにプリントしたりして､ カウンターを1つ増やそうとしています｡
‫だから､ ここと次を増やしましょう｡
‫必要なのは､ whileで条件を指定し､ カウンタが5より小さいかどうかを確認することです｡
‫そこで､ コンソールで結果を見ることができるように､ コンソールを追加して読み込ませ､ 実行してみると､
‫0 1, 2, 3, 4となります｡
‫つまり､ このカウンターは今のところ､ これまでの4つのループとそれほど大きな違いはないのです｡
‫では次に､ 何が違うのかを見てみましょう｡
‫そこで､ カウンターがゼロではなく､ 15だったとします｡
‫だから今､ この下にある野生の条件はもう満たされていないのです｡
‫では､ やはりコードを実行してみると､ 15という結果が得られます｡
‫つまり､ コードを一度実行した後にチェックするのです｡
‫つまり､ このコードは常に最初に実行され､ 次にカウンターをチェックします｡ この場合､ 15は5より低く､
‫15は5より低くないということです｡
‫だから､ 万が一5より低くなっても､ コードを再度実行するのはやめましょう｡
‫そして､ もう一度コードを実行して､ インクリメントを実行するなどしてみましょう｡
‫さて､ ここでwhileループを作成する際に､ うっかり忘れてしまいそうなことがあります｡
‫そこで､ ゼロから始まるカウンターを用意し､ インクリメントするのを忘れたとします｡
‫では､ コードを実行してみると､ このような無限ループが発生します｡
‫そのため､ 常にゼロが生成され､ 何十億ものゼロが生成され､ ゼロを出力する以外のことは何もしないので､ 私のプログラムのほとんどがシャットダウンしてしまいます｡
‫つまり､ 無限ループでダメなんです｡
‫常に自分のインクリメント､ 少なくとも将来のある時点でこの状態に至るアプローチが､ もう真実ではないことが本当に重要なのです｡
‫ですから､ この条件を特定の時間だけ満たすことがとても重要なのです｡
‫つまり､ カウンタが常に0であれば､ この条件は常に真となるため､ エンドレスにはならないのです｡
‫そして､ このdo whileループは､ 常に実行され､ 実行され続けるのです｡
‫だから､ 本当に気をつけなければならないことです｡
‫その他､ do whileループは､ 先ほど言ったように､ 一度だけコードを実行する必要がある場合に超便利です｡
‫わかりました｡
‫では､ ユーザーの入力を受けて､ それに基づいてコードを実行する小さなプログラムを作ってみましょう｡
‫そこで､ テキストの長さと呼ぶべき整数を作成し､ これをゼロに設定することにします｡
‫さて､ テキストの長さは､ ユーザーが入力したテキストの長さである必要があります｡
‫では､ ここにちょっとしたエントリーを作ってみましょう｡
‫右の行をコンソールにして､ ユーザーは友人の名前を入力してください､ そしてそれは行を読むことになります｡
‫そして､ 次にやりたいことは､ ユーザーが何を入力したかをチェックすることです｡
‫これは文字列で､ 友達の名前になるわけです｡
‫そして今､ 私がしていることは､ ユーザーの入力の長さをテキスト全体の長さに加えることです｡
‫そこで､ int current length is equal to name of friend dot lengthのような使い方をするつもりです｡
‫つまり､ ユーザーが入力したテキストの長さが得られ､ それが現在の長さに追加されることになります｡
‫そして､ 最終的にテキストの長さを取り､ それ自体に現在の長さを足すことにしているのです｡
‫ついでに言うと､ もうカウンターは必要ないだろう､ 確認したいのは条件としてのテキストの長さなのだから｡
‫だから､ もしテキストの長さが20より大きいなら､ ユーザーに対してちょっとしたステートメントで終わらせたいんだ｡
‫だから､ 最後はThanksで締めくくろうと思います｡
‫それで十分だった｡
‫ついでに言うと､ 別の変数文字列を使うことだってできるんだ｡
‫全文は空文字列と等しいので､ 全文プラス友人の名前と等しいものを使うことにします｡
‫これで全文が表示され､ ユーザーの全文が読めるようになります｡
‫だから､ その全文に登場する仲間は全員｡
‫では､ これが何をするものなのか､ ここで見てみましょう｡
‫では､ コードを実行してみましょう｡ 友人の名前を入力してください｡
‫そして､ まずはマイケルから｡
‫次に､ 友人の名前を入力してください｡
‫Sissyと言い､ Frank Mariaと入力すると､ Thanksと出る｡
‫それで十分だった｡
‫マイケル､ シシー､ フランク､ マリア
‫これは､ whileループを使ったアプローチでもありますね｡
‫ちなみにワイルドループでも同じことができるのですが､ それはチェックでできることです｡
‫さて､ ユーザーが何を入力したかはともかく､ とにかくチェックを行う前にまず何かを入力する必要があります｡
‫だからこそ､ ここでdo whileループを走らせることに意味があるのです｡
‫だから､ 確認するのです｡
‫なるほど｡
‫ユーザーからもらったエントリーとは？
‫そして､ 現在の長さを確認する｡
‫それをテキストの長さを知る整数に加え､ 「20文字しかないようにしたい」「少なくともチェックする時点ではそうしたい」と言うのです｡
‫最大20文字までとしたい｡
‫つまり､ 入力後にチェックを行うため､ 20文字より少し多くなる可能性があるわけですね｡
‫とにかく､ do y ループを使用する別のアプローチと､ 例えばカウンターのようにコードを通しで実行するだけでなく､
‫リクエストを確定するために実際のユーザー入力を使用する方法がお分かりいただけたと思います｡
‫これを利用して､ たとえば､ 生徒の平均点を計算するような小さなツールを作ろうと思っています｡
‫例えば､ あなたが教師で､ 20人の生徒がいるとします｡ そうすると､ それぞれの生徒のスコアを入力するだけで､
‫最後に平均点を教えてくれる小さなツールを作ることができます｡
‫だから､ もう自分で開発してもいいんじゃないでしょうか｡
‫その方法を知っているんですね｡
‫ちょっと違う例を見ただけなのに､ その知識を移し替えて作ることができるのです｡
‫でも､ とにかくそれをやるんです｡
‫そうだろ？
‫よかったです｡
‫ということで､ 次の動画にお付き合いいただけたらと思います｡
‫今回は､ whileループについて見ていきます｡
‫では､ 現地でお会いしましょう｡