VB.Net教程
VB .Net 教程
VB.Net 环境
VB.Net 程序结构
VB.Net 基本语法
VB.Net 数据类型
VB.Net 变量
VB.Net 常量和枚举
VB.Net 修饰符
VB.Net 声明
VB.Net 指令
VB.Net 运算符
VB.Net 流程控制
VB.Net 循环
VB.Net 字符串
VB.Net 日期和时间
VB.Net 数组
VB.Net ArrayList
VB.Net Hashtable
VB.Net SortedList
VB.Net Stack(栈)
VB.Net Queue(队列)
VB.Net BitArray
VB.Net 函数
VB.Net 子程序
VB.Net 类和对象
VB.Net 异常处理
VB.Net 文件处理
VB.Net - 基本控件
VB.Net - 表单
VB.Net - 文本框控件
VB.Net - 标签控件
VB.Net - 按钮控件
VB.Net - 列表框控件
VB.Net - 组合框控件
VB.Net - 单选按钮控件
VB.Net - 复选框控件
VB.Net - 图片框控件
VB.Net - 进度条控件
VB.Net - 滚动条控件
VB.Net - DateTimePicker 控件
VB.Net - 树视图控件
VB.Net - 列表视图控件
VB.Net - 对话框
VB.Net - ColorDialog 控件
VB.Net - FontDialog 控件
VB.Net - OpenFileDialog 控件
VB.Net - SaveFileDialog 控件
VB.Net - PrintDialog 控件
VB.Net - 高级表单
VB.Net - MenuStrip 控件
VB.Net - StripMenuItem 控件
VB.Net - ContextMenuStrip 控件
VB.Net - 事件处理
VB.Net 高级
VB.Net - 正则表达式
VB.Net - 数据库访问
VB.Net - Excel 表格
VB.Net - 发送电子邮件
VB.Net - XML 处理
VB.Net - 网络编程
上一节: VB.Net 流程控制
上一节
下一节: VB.Net 字符串
下一节
VB.Net 循环
循环
在某些情况下,您需要多次执行一个代码块。通常,语句是按顺序执行的:函数中的第一个语句首先执行,然后执行第二个,依此类推。编程语言提供了各种控制结构,允许更复杂的执行路径。循环语句使我们可以多次执行一个语句或一组语句,以下是大多数编程语言中循环语句的一般形式-
VB.Net提供以下类型的循环来处理循环需求。单击以下链接以查看其详细信息。
循环类型
描述
Do 循环
当布尔条件为True或条件变为True时,它将重复封闭的语句块。它可以随时通过Exit Do语句终止。
For...Next 循环
它将一组语句重复指定的次数,并且循环索引在循环执行时计算循环迭代的次数。
For Each...Next 循环
它为集合中的每个元素重复一组语句。此循环用于访问和操作数组或VB.Net集合中的所有元素。
While... End While
只要给定条件为True,它就会执行一系列语句。
With... End With
它不是完全循环的构造。它执行一系列重复引用单个对象或结构的语句。
嵌套循环
您可以在任何While,For或Do循环中使用一个或多个循环。
Do 循环
语法:
Do { While | Until } condition
[ statements ]
[ Continue Do ]
[ statements ]
[ Exit Do ]
[ statements ]
Loop
-or-
Do
[ statements ]
[ Continue Do ]
[ statements ]
[ Exit Do ]
[ statements ]
Loop { While | Until } condition
范例:
Module loops
Sub Main()
' local variable definition
Dim a As Integer = 10
'do loop execution
Do
Console.WriteLine("value of a: {0}", a)
a = a + 1
Loop While (a < 20)
Console.ReadLine()
End Sub
End Module
尝试一下
For...Next 循环
语法:
For counter [ As datatype ] = start To end [ Step step ]
[ statements ]
[ Continue For ]
[ statements ]
[ Exit For ]
[ statements ]
Next [ counter ]
这是“for”循环中的控制流程-
init步骤首先被执行,并且只有一次。此步骤允许您声明和初始化任何循环控制变量。
接下来,测试condition。如果为true,则执行循环主体。如果为假,则不执行循环主体,并且控制流仅在“for”循环之后跳转到下一条语句。
在“for”循环的主体执行之后,控制流跳回到increment语句。该语句允许您更新任何循环控制变量。
现在将再次测试condition。如果为true,则循环执行并重复执行过程(循环主体,然后是递增步,然后再次是条件)。条件变为假之后,“for”循环终止。
范例:
Module loops
Sub Main()
Dim a As Byte
' for loop execution
For a = 10 To 20
Console.WriteLine("value of a: {0}", a)
Next
Console.ReadLine()
End Sub
End Module
尝试一下
例如,如果要使用2的步长,则只需显示10到20之间的偶数-
Module loops
Sub Main()
Dim a As Byte
' for loop execution
For a = 10 To 20 Step 2
Console.WriteLine("value of a: {0}", a)
Next
Console.ReadLine()
End Sub
End Module
尝试一下
For Each...Next 循环
它为集合中的每个元素重复一组语句。此循环用于访问和操作数组或VB.Net集合中的所有元素。
语法:
For Each element [ As datatype ] In group
[ statements ]
[ Continue For ]
[ statements ]
[ Exit For ]
[ statements ]
Next [ element ]
范例:
Module loops
Sub Main()
Dim anArray() As Integer = {1, 3, 5, 7, 9}
Dim arrayItem As Integer
'displaying the values
For Each arrayItem In anArray
Console.WriteLine(arrayItem)
Next
Console.ReadLine()
End Sub
End Module
尝试一下
While... End While 循环
语法:
While condition
[ statements ]
[ Continue While ]
[ statements ]
[ Exit While ]
[ statements ]
End While
范例:
Module loops
Sub Main()
Dim a As Integer = 10
' while loop execution '
While a < 20
Console.WriteLine("value of a: {0}", a)
a = a + 1
End While
Console.ReadLine()
End Sub
End Module
尝试一下
With ... End With 循环
它不是完全循环的构造。它执行一系列重复引用单个对象或结构的语句。
语法:
With object
[ statements ]
End With
范例:
Module loops
Public Class Book
Public Property Name As String
Public Property Author As String
Public Property Subject As String
End Class
Sub Main()
Dim aBook As New Book
With aBook
.Name = "VB.Net Programming"
.Author = "Alex Mo"
.Subject = "Information Technology"
End With
With aBook
Console.WriteLine(.Name)
Console.WriteLine(.Author)
Console.WriteLine(.Subject)
End With
Console.ReadLine()
End Sub
End Module
尝试一下
嵌套循环
VB.Net允许在另一个循环中使用一个循环。以下部分显示了一些示例来说明这一概念。
VB.Net中嵌套的 For 循环语句的语法如下-:
For counter1 [ As datatype1 ] = start1 To end1 [ Step step1 ]
For counter2 [ As datatype2 ] = start2 To end2 [ Step step2 ]
...
Next [ counter2 ]
Next [ counter 1]
VB.Net语言中的嵌套While循环语句的语法如下-:
While condition1
While condition2
...
End While
End While
VB.Net语言中嵌套Do ... While循环语句的语法如下-:
Do { While | Until } condition1
Do { While | Until } condition2
...
Loop
Loop
关于循环嵌套的最后一点是您可以将任何类型的循环放入任何其他类型的循环中。例如,for循环可以在while循环内,反之亦然。
范例:
Module loops
Sub Main()
' local variable definition
Dim i, j As Integer
For i = 2 To 100
For j = 2 To i
' if factor found, not prime
If ((i Mod j) = 0) Then
Exit For
End If
Next j
If (j > (i \ j)) Then
Console.WriteLine("{0} is prime", i)
End If
Next i
Console.ReadLine()
End Sub
End Module
尝试一下
循环控制语句
循环控制语句从其正常顺序更改执行。当执行离开作用域时,在该作用域中创建的所有自动对象都将被销毁。VB.Net提供以下控制语句。
控制声明
描述
Exit 声明
终止循环或Select Case语句,并在循环或Select Case后立即将执行的语句。
Continue 声明
使循环跳过其其余部分,并在重新进行迭代之前立即重新测试条件。
GoTo 声明
将控制权转移到带标签的语句。尽管不建议在程序中使用GoTo语句。
Exit 声明
Exit语句将控制权立即从过程或块转移到过程调用或块定义之后的语句。它从调用它的地方终止循环,过程,try块或select块。如果使用嵌套循环(即,另一个循环中的一个循环),则Exit语句将停止执行最里面的循环,并开始执行该块之后的下一行代码。
语法:
Exit { Do | For | Function | Property | Select | Sub | Try | While }
范例:
Module loops
Sub Main()
' local variable definition
Dim a As Integer = 10
' while loop execution '
While (a < 20)
Console.WriteLine("value of a: {0}", a)
a = a + 1
If (a > 15) Then
'terminate the loop using exit statement
Exit While
End If
End While
Console.ReadLine()
End Sub
End Module
尝试一下
Continue 声明
Continue语句使循环跳过其主体的其余部分,并在重新进行迭代之前立即重新测试其条件。它的工作有点像Exit语句。而不是强制终止,它会强制执行循环的下一次迭代,从而跳过之间的任何代码。对于For ... Next循环,Continue语句使条件测试和循环的增量部分执行。对于While和Do ... While循环,continue语句使程序控制传递给条件测试。
语法:
Continue { Do | For | While }
范例:
Module loops
Sub Main()
' local variable definition
Dim a As Integer = 10
Do
If (a = 15) Then
' skip the iteration '
a = a + 1
Continue Do
End If
Console.WriteLine("value of a: {0}", a)
a = a + 1
Loop While (a < 20)
Console.ReadLine()
End Sub
End Module
尝试一下
GoTo 声明
注 – 在任何编程语言中都强烈建议不要使用goto语句,因为它会使跟踪程序的控制流变得困难,从而使程序难以理解和修改。可以重写任何使用goto的程序来避免使用它们。
GoTo语句将控制无条件地转移到过程中的指定行。GoTo语句的语法是-
语法:
GoTo label
范例:
Module loops
Sub Main()
' local variable definition
Dim a As Integer = 10
Line1:
Do
If (a = 15) Then
' skip the iteration '
a = a + 1
GoTo Line1
End If
Console.WriteLine("value of a: {0}", a)
a = a + 1
Loop While (a < 20)
Console.ReadLine()
End Sub
End Module
尝试一下
上一节: VB.Net 流程控制
上一节
下一节: VB.Net 字符串
下一节
查看笔记 分享笔记
笔记内容:
称呼:
Email:
站点:
分享笔记 重置
分类导航
前端
Ajax 教程
Angular 教程
Aurelia 教程
Bootstrap 教程
ChartJS 教程
CSS 教程
ES6 教程
FontAwesome 教程
HTML 教程
HTML 字符集 教程
HTML 游戏 教程
JavaScript 教程
jQuery 教程
Less 教程
React 教程
Sass 教程
Stylus 教程
TypeScript 教程
Unity 教程
Vue.js 教程
WebAssembly 教程
XAML 教程
颜色 教程
服务端
C# 教程
C++ 教程
COBOL 教程
C语言 教程
Fortran 教程
Go 教程
Groovy 教程
Java 教程
JSP 教程
JVM 教程
Kotlin 教程
Lisp 教程
Lua 教程
Node.js 教程
Pascal 教程
Perl 教程
PHP 教程
Python 教程
Python 3 教程
Ruby 教程
Rust 教程
Scala 教程
Spring 教程
Spring Boot 教程
Spring Cloud 教程
VB.Net 教程
移动端
Android 教程
IOS 教程
Objective-C 教程
React Native 教程
Swift 教程
小程序 教程
数据库
Access 教程
DB2 教程
Mariadb 教程
Memcached 教程
MongoDB 教程
MySQL 教程
Neo4j 教程
PL/SQL 教程
PostgreSQL 教程
Redis 教程
SQL 教程
SQL Server 教程
SQLite 教程
T-SQL 教程
数据格式
Jackson 教程
JSON 教程
SVG 教程
XML 教程
开发工具
ActiveMQ 教程
Ant 教程
Apache HttpClient 教程
Apache POI PPT 教程
AWS 教程
Docker 教程
ElasticSearch 教程
ExpressJS 教程
GIT 教程
GitLab 教程
Google Maps 教程
Gradle 教程
Java NIO 教程
JavaFX 教程
JavaMail 教程
JDBC 教程
jMeter 教程
JPA 教程
jsoup 教程
Junit 教程
KoaJS 教程
Kubernetes 教程
Log4j 教程
Logstash 教程
Lucene 教程
Makefile 教程
Maven 教程
RESTful 教程
Sed 教程
SEO 教程
Servlet 教程
SLF4J 教程
Socket.IO 教程
Struts 教程
SVN 教程
TestNG 教程
UML 教程
UNIX / LINUX 教程
WebSocket 教程
WPF 教程
xStream 教程
区块链 教程
数据处理
Flink 教程
Flume 教程
Hadoop 教程
Hbase 教程
Hive 教程
Kafka 教程
Kibana 教程
MapReduce 教程
MATLAB 教程
MyBatis 教程
Pig 教程
R语言 教程
Solr 教程
Spark 教程
Storm 教程
Zookeeper 教程
大数据分析 教程
数据仓库 教程
数据挖掘 教程
计算机基础
HTTP 教程
IPv4 教程
IPv6 教程
Ubantu 教程
WebServices 教程
嵌入式系统 教程
操作系统 教程
数据结构和算法 教程
汇编语言 教程
物联网 教程
电子电路基础 教程
编译器设计 教程
网站开发 教程
计算机 教程
计算机基础 教程
计算机网络 教程
设计模式 教程
AI
CNTK 教程
Keras 教程
PyTorch 教程
TensorFlow 教程
人工智能 教程
机器学习 教程
Python 技术
Django 教程
Flask 教程
NumPy 教程
Pandas 教程
Pillow 教程
PyGTK 教程
PyQt5 教程
PySpark 教程
pytest 教程
Python -数据科学 教程
Python MySQL 教程
Python 取证 教程
Python 数据结构 教程
Python 文本处理 教程
Python 网络编程 教程
Python 网页抓取 教程
Python 设计模式 教程
RxPY 教程
SciPy 教程
Seaborn 教程
SymPy 教程
wxPython 教程
框架
Laravel 教程
Web 图标Icon 教程
Web2py 教程
WebGL 教程
WebRTC 教程
WordPress 教程
Yii 教程
Zend Framework 教程
SAP
Crystal Reports 教程