概要
繰り返し処理がしたい場合には Do Loop ループ が使えます。処理条件がないということは、処理を止める条件もないということなので、永遠にループしてしまいます。そこで、 Exit Do を使って強制的に処理を抜けます。Do Loop 処理の仲間には下記の5種類が居ます。
Do while Loop : 条件に充てはまると処理
Do Loop while : 1回は処理をしてから条件に充てはまると処理
Do Until Loop : 条件に充てはまらないと処理
Do Loop Until : 一回は処理してから条件に充てはまらないと処理
Do Loop :Exit Do を指定しないとループを抜けない
考え方としては、「Do」 と 「処理」 と 「Loop」 があって、処理の前に条件を指定したければ、「処理」の前に書いて、処理の後に条件を指定したければ 「Loop」の間に書く、処理中に判断したければ、「Do」 と 「Loop」間に書くイメージです。
Do (処理をやる or やらない 条件式)
処理...
(処理をやる or やらない 条件式)
Loop (処理をやる or やらない 条件式)
Do Loop の基本的な構文は下記の通りです。
Do
処理...
(Exit Do で処理を抜ける)
Loop
内容
サンプルコードは、コンソール画面からなにか入力されるまで、”何か入力してください”がループします。
イメージとしては、ゲームの主人公の名前を入力するまで、次に進まない感じです。
Module Module1
Sub Main()
' 変数の宣言
Dim inStr As String = ""
' 何か入力するまで続ける
Do
Console.WriteLine("名前を入力してください")
' キーボードから入力
inStr = Console.ReadLine()
If Not inStr.Equals("") Then
' 入力があれば処理を抜ける
Exit Do
End If
Loop
' 結果を表示
Console.WriteLine() ' 改行
Console.WriteLine("こんにちは")
Console.WriteLine(inStr)
Console.WriteLine("さん")
End Sub
End Module
名前を入力してください 名前を入力してください 名前を入力してください いぬづか こんにちは いぬづか さん 続行するには何かキーを押してください . . .
Exit Do は、Do Loop の他の仲間にも使う事が出来ます。
Do while Loop
Do Loop while
Do Until Loop
Do Loop Until


コメント