progs.biz  
Начало>VB.NET>Основы>Урок 22
C#
VB.NET
Visual C++.NET
ASP.NET
Visual C++ 6
WinAPI
C/C++
Delphi
C++ Builder
Java
SQL
PHP
DirectX
Visual Basic 6.0
Ассемблер
Интернет
Сист. прогр-ние
Pocket PC
Обзор книг
Обзор программ

Джон Коннелл. Разработка элементов управления Microsoft .NET на Microsoft Visual Basic .NET
Джон Коннелл. Разработка элементов управления Microsoft .NET на Microsoft Visual Basic .NET
Заказать на Озоне



Яндекс-цитирования

Основы VB.NET
Урок 22. Операторы циклов For...Next и For Each

Циклы в VB.NET похожи на циклы в других языках программирования. На этом занятии мы рассмотрим циклы двух типов - циклы For...Next и For Each. Циклы For...Next выпоялняются опеределенное число раз. Т. е. если вам заранее известно, сколько раз должен выполнится ваш цикл, то используем цикл For...Next. Цикл For Each используется для обхода элементов коллекций и массивов. Например, с помощью For Each можно перечислить (обойти) все элементы на форме или обработать все строки тамбицы в базе данных.

Вот пример на оператор For...Next:

        Dim A(10) As Integer
        Dim i As Integer
        For i = 0 To 9
            'Заполняем массив квадратами чисел
            A(i) = i * i
        Next
        For i = 0 To 9
            'Выводим элементы массива
            Console.WriteLine(A(i))
        Next

В этом примере массив из 10 целых сначала заполняется квадратами чисел, потом элементы массива выводятся на экран. Вместо строки

        ...
        Next
        ...

Можно написать

        ...
        Next i
        ...

В циклах типа For...Next счетчик цикла (i в данном случае) изменяется автоматически.

В приведенном примере счетчик увеличивается при каждом прохождении цикла на 1. Если вам нужен другой шаг, то используем конструкцию с Step:

        For i = 0 To 9 Step 2
            'Что-то делаем
        Next

Такой цикл выполнится 5 раз.

Теперь рассмотрим пример на цикл For Each:

        Dim z As Integer
        Dim A(10) As Integer
        'Заполняем массив A
        ...
        For Each z In A
            If z > 10 Then
                Console.WriteLine(z)
            End If
        Next

Как вы видите, мы в нашем цикле пробегаем все элементы в массиве A (это видно из конструкции In A). Если элемент массива оказался больше 10, мы выводим его на экран.

Обычно циклы For Each используются для перечисления элементв всевозможных коллекций (например, элементов на форме или всех шрифтом в Windows).

Рассылки нашего сайта на Subscribe.Ru
Visual C++, MFC
C# и .NET
VB.NET
ASP.NET new!
Win API
C/C++
Delphi
Java
HTML, PHP, mySQL, WEB-дизайн
Flash MX
C++ Builder
Ассемблер
SQL Server
DirectX
Обзор книг
Обзор программ
Новости сайта progs.biz


 
 
Копирование любых материалов сайта без разрешения авторов и владельцев сайта запрещено.
© 2002-2008 сайт progs.biz
© 2002-2008 Игорь Алексеев