具体介绍四大类VB.NET循环

开发 后端
这里介绍VB.NET循环,包括介绍用For/Next循环可以精确地控制循环体的执行次数,如果不清楚要执行的循环的次数,那么可以用While/ End While循环等方面

VB.NET有很多值得学习的地方,这里我们主要介绍VB.NET循环,VB.NET循环有三种形式:For/Next循环、While/End While循环、Do/Loop循环和For/Each循环。

1. For/Next循环

用For/Next循环可以精确地控制循环体的执行次数。For/Next循环的语法如下:

For counter = startvalue To endvalue [Step stepvalue]  
[statements]  
[Exit For]  
[statements]  
Next 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

其中,用Step关键字可以定义循环计数器的增长方式,stepvalue的值(可正可负)来适应各种不同的需求。Exit For语句允许在某种条件下直接退出循环体。用For/Next语句来实现显示二维数组的内容。

<%  
Dim arrData(1,2)  
Dim intI,intJ as Integer  
arrData(0,0)=12  
arrData(0,1) =13  
arrData(0,2) =14  
arrData(1,0) =15  
arrData(1,1) =16  
arrData(1,2) =17  
For intI=0 To 1  
For intJ=0 To 2  
Response.Write (arrData(intI,intJ) & " ")  
Next  
Response.Write ("<br>")  
'一行显示完以后换行显示下一行  
Next  
%> 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.

可以看出,用For/Next循环来显示数组这样的可以确定循环次数的数据结构是十分方便的。

2. While/End While 循环

如果不清楚要执行的循环的次数,那么可以用While/ End While循环。它有一个检测条件,当条件满足时,执行循环体的内容。如果条件不满足,就退出循环。While/ End While语法如下:

While condition  
[statements]  
End While 
  • 1.
  • 2.
  • 3.

由于在进入循环体之前会遇到检测条件,所以如果这个时候condition的值为False,那么While/ End While循环的循环体有可能一次也不能执行。显示3次问候信息。

<%  
Dim intI as Integer  
IntI=0 
While intI<3 
Response.Write ("Hello! Cindy!" & "<br>")  
IntI=intI+1  
End While  
%> 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

在这个例子的第3行中为第2行中定义的intI变量设置了初值0。这里,如果不设置初值也是可以的,系统会自动为intI进行初始化(VB.NET默认为未显式初始化的整数初始化为0)。但是,建议养成为变量设置初值的好习惯,这样可以防止很多意想不到的错误。

3. Do/Loop

同样,在不知道循环次数的情况下,也可以使用Do/Loop 循环。Do/Loop循环的作用与While/ End While十分相似。它的语法是:

Do {While | Until} condition  
[statements]  
[Exit Do]  
statements]  
Loop 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

其中,Do后面的While和Until是可选的。使用While时,后面的条件满足则执行循环体;使用Until时,后面的条件满足就退出循环体。Do/Loop循环还有另外一种写法:

Do  
[statements]  
[Exit Do]  
[statements]  
Loop {While | Until} condition 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

这种写法的结果是:循环体在执行的时候至少会执行一次。显示3次问候信息。

<%  
Dim intI  
IntI=0 
Do Until intI>2  
Response.Write ("Hello! Cindy!" & "<br>")  
IntI=intI+1  
Loop  
%> 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

可以看出,Do/Loop的执行和While/End While的执行没有太大的区别。用户也可以把上面例子中第4行中的Until改为While并相应地改变后面的条件来实现相同的功能。

4. For/Each

在某些特殊情况下,可以使用For/Each来实现对一个数组或集合(集合将在后面的章节中讲解)中元素的遍历。

For/Each语句的写法如下:

For Each item In Array or Collection  
[statements]  
Next 
  • 1.
  • 2.
  • 3.

用For/Each显示一个数组中的所有数据。

<%  
Dim arrData(3)  
Dim stritem as string  
arrData(0)="Beijing"  
arrData(1)="Shanghai"  
arrData(2)="Guangzhou"  
For Each stritem In arrData  
Response.Write (stritem & "<br>")  
Next  
%> 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

可以看出,For/Each循环与For/Next循环的区别是:在For/Next循环中需要指明循环的次数,而在For/Each循环中不需要这样就可以遍历到一个数组或集合的所有内容。另外需要说明的是,这种循环通常在集合中使用。以上介绍VB.NET循环。

【编辑推荐】

  1. VB.NET动态控件数组三部曲
  2. 全方位分析VB.NET编码规范
  3. 剖析VB.NET Process的属性与对象
  4. VB.NET SendKeys方法与键入值
  5. 用实例讲述VB.NET Process类
责任编辑:佚名 来源: Vlan9
相关推荐

2009-10-23 10:18:43

VB.NET运算符

2009-11-10 11:01:05

VB.NET事件

2009-10-26 18:41:05

VB.NET获取硬盘信

2010-01-22 15:37:02

VB.NET监控类

2010-01-07 16:51:56

VB.NET窗体钩子

2010-11-15 15:20:13

Oracle索引扫描

2009-11-11 09:40:53

Oracle索引扫描

2009-10-21 11:07:32

VB.NET类库

2009-10-28 09:55:29

VB.NET MyCl

2010-01-18 18:32:43

VB.NET监视启动过

2010-01-13 09:45:53

VB.NET Arra

2009-10-20 09:39:04

VB.NET Butt

2009-10-13 14:50:59

VB.NET Envi

2010-01-12 16:20:44

VB.NET类

2009-10-20 17:38:54

VB.NET Comp

2010-01-07 15:37:35

VB.NET ForNext循环

2009-11-10 10:28:20

VB.NET诞生

2010-01-21 16:45:00

VB.NET继承规则

2009-10-12 15:02:51

VB.NET动态控件

2010-01-07 15:25:11

VB.NET数组
点赞
收藏

51CTO技术栈公众号