千家信息网

VB.NET中CASE语句怎么用

发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,小编给大家分享一下VB.NET中CASE语句怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!如果要将同一个表达式与不同的值进行比较,则可以用 Select...Case 语句来替
千家信息网最后更新 2024年11月26日VB.NET中CASE语句怎么用

小编给大家分享一下VB.NET中CASE语句怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!


如果要将同一个表达式与不同的值进行比较,则可以用 Select...Case 语句来替换 If...Then...Else 语句。所不同的是, If 和 ElseIf 语句可在每个语句中计算不同的表达式,而 Select 语句对单个表达式只计算一次,然后将其和不同的值比较。

我们来看一个示例,代码如下:

Function bonus(ByVal performance As Integer, _  ByVal salary As Decimal) As Decimal  Select performance  Case 1  Return salary * 0.1  Case 2  Return salary * 0.3  Case 3  Return salary * 0.7  Case 4  Return salary * 0.9  Case 5  Return salary * 1.2  End Select  End Function

这个计算员工奖金 (bonus) 的函数 (Function) 有两个参数,一个是 performance,即员工的表现,另外一个是 salary,即员工的工资。员工的表现有 5 等,分别用 1,2,3,4,5 来表示。这个示例用了 Select...Case 语句,意思是当员工 performance 为 1 时,员工的奖金是工资乘以 0.1;当员工 performance 为 2 时,员工的奖金是工资乘以 0.3;当员工 performance 为 3 时,员工的奖金是工资乘以 0.7;员工 performance 为 4 时,员工的奖金是工资乘以 0.9;员工 performance 为 5 时,员工的奖金是工资乘以 1.2。

通过这个示例,你可以了解 Select...Case 语句的结构。如下:

Select ... (某个表达式,比如一个变量)  Case... (某个值)  ...(执行代码)  Case... (某个值)  ...执行代码  End Select


你可以使用任意数目的 VB.NET CASE语句增加要比较的值。

Visual Basic 按照在 Select...Case 结构中出现的顺序,将表达式的值和 Case 语句中的值进行比较。如果发现有一个 Case 的值匹配,就执行该 Case 相应的代码,执行完之后,不会再执行其它VB.NET Case 语句,直接就到 End Select 了。

VB.NET CASE Else语句

如果表达式不符合 Case语句的任何值,可以用 Case Else 语句来应付例外情况。比如上个示例中,除了 1 到 5 的数值外,假设员工 performance 为 0 或者大于 6 如何处理?

你可以改写程序,如下:

Function bonus(ByVal performance As Integer, _  ByVal salary As Decimal) As Decimal  Select performance  Case 1  Return salary * 0.1  Case 2  Return salary * 0.3  Case 3  Return salary * 0.7  Case 4  Return salary * 0.9  Case 5  Return salary * 1.2  Case Else  Return 0  End Select  End Function


注意改写的示例增加了两行代码:

Case Else  Return 0

这两行代码的意思是,如果 performance 不等于 Case语句的任何值时,就执行 Case Else 后的语句,返回 0 。

VB.NET Case语句可包含多个值和某个范围的值

Function bonus(ByVal performance As Integer, _  ByVal salary As Decimal) As Decimal  Select performance  Case 1  Return salary * 0.1  Case 2,3  Return salary * 0.3  Case 3 To 7  Return salary * 0.7  Case 8 To 9  Return salary * 0.9  Case Is <= 15  Return salary * 1.2  Case Else  Return 0  End Select  End Function

每个 Case 语句可以包含一个值,比如:

Case 1

也可以包含多个值,多个值用逗号 (,) 分开,比如:

Case 2,3

也可以是某个范围的值,比如:

Case 3 To 7

也可以是值和比较运算符的组合,比如:

Case Is <= 15

看完了这篇文章,相信你对"VB.NET中CASE语句怎么用"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

0