VB.net/VB2017/VB2019
FOR EACH文を使ってコレクション内のオブジェクトを処理
繰り返し処理をしてコレクションの中のオブジェクトを一つずつ取り出し、操作したいという処理はプログラミンをしているの中で数多く出てきます。
通常のFor文のループでも行う事ができますが、For Each文のステートメントを使うとコンパクトにまとめる事が出来ますし、慣れてしまうと大変便利です。
For Each文によるコレクションに対するループ
For Each オブジェクトの型の変数 In コレクションや配列 処理 Next
コレクションや配列の中をループ1周ごとに一つずつ取り出し、用意した変数の中へ自動的に格納してくれます。
ループする回数はコレクションの中のオブジェクトの数と同じになります。
使い方の例
コンボボックスを配置したフォーム
コンボボックスの中のアイテム(リスト)を参照します。
Dim sTmp As String 'アイテムを格納する変数 'コンボボックスのアイテム数ループ For Each sTmp In ComboBox1.Items 'ループ毎にsTmpには自動的に代入されている 'メッセージ表示して確認 MessageBox.Show(sTmp) Next
色々なオブジェクトをもったコレクションや配列を対象とする事ができます。
注意が必要なのは、コレクションの中のオブジェクトの型とそれを格納する変数は同じ型か、もしくは格納する事のできるクラスでないといけません。