工具搜索引擎 加入收藏
意见反馈
帮助中心
繁體中文
首页 工具超市 产品信息 资讯中心 工具黄页 站长工具 实用工具 会员管理 联系我们  
广告投放
您当前的位置:工具网站长书库> vb2005教程

If...Then...Else 条件语句

在生活中,我们要作各种各样的决定。比如,今天我做个决定:如果我钱包里的钱多于 100 元,我就去买大闸蟹,不到 100 元呢,我就随便买点蔬菜吧。

在编程中,你可能也希望程序提供这样的判断能力,如果符合某个条件 (即当条件为 True 时),就执行某些代码,反之,则执行其它代码。在 Visual Basic 中,提供了这样的决策结构。其中最常用的,就是 If...Then...Else 语句。

If...Then...Else 语句

If...Then...Else语句基本结构如下:

If ... Then
...
Else
...
End if 

我们用文字解释一下上面的语句,文字解释在括号里,如下:

If(如果) ...(符合某些条件) Then(就)
  ...(执行代码)
Else(反之)
  ...(执行其它代码)
End if (结束)

我们举个实际的示例。

打开 Visual Studio。在文件 (File) 菜单上,单击新建项目 (New Project)。 在新建项目 (New Project) 对话框的模板 (Templates) 窗格中,单击 Windows 应用程序 (Windows Application)。在名称 (Name) 框中键入 IfStatement,再单击确定 (OK)。

选中工具箱 (Toolbox) 里的复选框 (CheckBox) 控件,按住鼠标将其拖放到 Form 1 上。然后在属性 (Properties) 窗口内将其 Name 属性改为 chkSite,将其 Text 属性设为 woyouxian.com。

选中工具箱 (Toolbox) 里的标签 (Label) 控件,按住鼠标将其拖放到 Form 1 上。然后在属性 (Properties) 窗口内将其 Name 属性改为 lblText,将其 Text 属性设为 Text。

选中工具箱 (Toolbox) 里的按钮 (Button) 控件,按住鼠标将其拖放到 Form 1 上。然后在属性 (Properties) 窗口内将其 Name 属性改为 btnShow,将其 Text 属性设为 Show。

然后双击该按钮,显示代码编辑器 (Code Editor)。加入代码,使其显示如下:

Private Sub btnShow_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles btnShow.Click
    If chkSite.Checked Then
       lblText.Text = "You selected " & chkSite.Text
    Else
       lblText.Text = "You did not select " & chkSite.Text
    End If
End Sub

选择调试 (Debug) 菜单中的开始调试 (Start Debugging),运行该程序。或者直接按快捷键 F5 运行。

勾上 CheckBox,然后按 Show 按钮,会出现 You selected woyouxian.com;如果反选 CheckBox (将 CheckBox 的勾去掉),然后按 Show 按钮,会出现 You did not select woyouxian.com。

没有 Else 的 If 语句

有些时候,你可能希望程序在符合某些条件时执行某些代码,不符合条件时什么也不做。我们可以将上面的 If...Then...Else 语句简化成如下:

If...Then
...
End if

修改上面的示例代码如下:

Private Sub btnShow_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles btnShow.Click
    If chkSite.Checked Then
       lblText.Text = "You selected " & chkSite.Text
    End if
 End Sub

选择调试 (Debug) 菜单中的开始调试 (Start Debugging),运行该程序。或者直接按快捷键 F5 运行。

勾上 CheckBox,然后按 Show 按钮,会出现 You selected woyouxian.com;如果反选 CheckBox (将 CheckBox 的勾去掉),然后按 Show 按钮,你会发现,什么也没有改变,标签上的文字依然是 You selected woyouxian.com,因为,我们去掉了 else 后的代码,所以当 CheckBox 没有打勾时,什么也没有做。

比较运算符 (Comparison Operators)

在 If 和其它条件语句中,我们会经常遇到各种比较运算符,下面是常用的比较运算符:

比较运算符 比较运算符说明 比较运算符示例
= 等于

25 = 25  'True

26 = 25  'False

> 大于

26 > 25  'True

24 > 25  'False

< 小于

24 < 25  'True

26 < 25  'False

<> 不等于

24 <> 25  'True

25 <> 25  'False

>= 大于等于

25 >= 25  'True

26 >= 25  'True

24 >= 25  'False

<= 小于等于

25 <= 25  'True

24 <= 25  'True

26 <= 25  'False

逻辑运算符 (Logical Operators) 中的 And 和 Or

刚才我们的示例中的条件是个简单的条件,即 CheckBox 是否被选中。在某些时候,我们需要更复杂的条件,比如:

If a > b And a > c Then

这句代码表示:必须同时符合两个表达式,即 a > b 的同时,也必须 a > c,条件才为 True。

再比如:

If a > b Or a > c Then

这句代码表示:只要符合其中一个表达式即可,或者符合 a > b,或者符合 a > c,条件就为 True。

这两句代码分别用到了两个逻辑运算符,一个是 And,表示两个表达式是“且”的关系;一个是 Or,表示两个表达式是“或者”的关系。

可执行多重选择的 ElseIf 语句

如果要测试的条件不止一个,就需要使用 ElseIf 语句。语句结构如下:

If...Then
...
ElseIf...Then
...
Else
...
End if

如果很很多条件,你可以多个 ElseIf...Then... 。

我们写个简单的例子,代码如下:

Dim number, digits As Integer
number = 25
If number < 10 Then
    digits = 1
ElseIf number < 100 Then
    digits = 2
ElseIf number < 1000 Then
    digits = 3
Else
    digits = 4
End If

这个示例有两个变量,一个是 number, 一个是 digits,首先将 25 这个数字赋值给 number,然后用 If 条件语句进行判断,如果 < 10,则 digits = 1,表示是一位数,如果不符合 < 10,则用下一个条件测试是否 <100,如果再不符合,则用下一个条件测试是否 < 1000,要是以上条件都不符合,则执行 Else 后面的语句,即 digits = 4。

提示

你可以根据需要,添加任意多个 ElseIf 语句。不过请注意,如果有许多条件需要测试,最好将这些语句按最可能执行的次序排列,将最常见的放在前面,这样效率最高。否则程序会测试每个条件,直到最后一个才符合时,会耗费运行的时间,降低程序的效率。

相关文章:Select...Case 条件语句

作者:woyouxian[at]gmail[点]com

时间:2006-12-12

返回上级目录
VB 2005 入门教程
安装 VB 2005
一个简单的 VB 2005 程序
什么是编程语言
什么是变量
数据类型概要

数据类型 - 整数和浮点数
数据类型 - 字符串
数据类型 - 日期
过程 - 子例程和函数
If...Then...Else 条件语句
Select...Case 条件语句
For...Next 循环语句