For...Next语句

For...Next语句是循环语句的一种,可以将一段代码重复执行设定的次数,语法为:

For 计数器变量 = 初始值 To 终止值 Step 步长值
    代码

Next

每执行一次代码,计数器变量就加上步长值,然后再次执行代码,直到计数器变量超过终止值。
实际使用的时候,如果步长为1,可以省略Step语句。

例如,求 1 + 2 + 3 +... + 100的和:

Dim Sum As Integer
Dim
i As Integer
For
i = 1 to 100
    Sum = Sum + i

Next

Output.Show(Sum)

如果要累加1到100之间的偶数,那么代码应该是:

Dim Sum As Integer
Dim
i As Integer
For
i = 2 To 100 Step 2
    Sum = Sum + i

Next

Output.Show(Sum)

在循环过程中,如果提前退出循环,可以用Exit For语句,例如:

Dim Sum As Integer
Dim
i As Integer
For
i = 1 To 100
    If i = 51 Then
        Exit
For
    End
If
    Sum = Sum + i

Next

OutPut.Show(Sum)

上面的代码实际上只是求得1到50的累计值,因为在计数器变量i等于51的时候,,程序退出了循环。

如果符合特定条件的时候,不执行循环代码,而是直接进行下一次循环,可以用Continue For语句,例如对于下面的语句:

Dim Sum As Integer
Dim
i As Integer
For
i = 1 To 100
   
If i Mod 2 = 0 Then
        Continue
For
    End
If
    Sum = Sum + i

Next

Output.Show(Sum)

上面的代码累加了1到100之间的奇数,因为碰到偶数,就直接进行下一次循环,而没有累加到变量Sum中。

你可以直接在For语句中声明计数器变量,语法为:

For 计数器变量 As 数据类型 = 初始值 To 终止值 Step 步长值
    代码

Next

此时计数器变量只能在循环代码中使用,例如:

Dim Sum As Integer
For
i As Integer = 1 To 100
    Sum = Sum + i

Next

Output.Show(Sum)

For...Next语句经常用于遍历数组集合,例如下面的代码,定义一个数组,然后给每个数组元素设置值:

Dim Values(100) As Integer
For
Index As Integer = 0 To Values.Length - 1
    Values(Index) = Index * 2

Next

再例如下面的代码,首先定义一个字符型集合,接着向集合加入一些值,最后利用For...Next语句列出集合中所有的值:

Dim Values As New List(Of String) From {"北京", "上海", "天津"}
Values.Add(
"重庆")
For
i As Integer = 0 To Values.Count - 1
    Output.Show(Values(i))

Next

我们可以用Step语句将步长设为负值,这样可以倒序来执行,例如:

For i As Integer = 100 To 1 Step -1
    Output.Show(i)

Next

在命令窗口执行下面的代码,会得到:

100
99
98
97
...
3
2
1


本页地址:http://www.foxtable.com/webhelp/topics/0225.htm