VB.NET操作符核心归类总结

开发 后端
文章主要多多种多样化的VB.NET操作符进行案例分析,对Is运算符、B.NET操作符重载、like操作符具体代码操作。希望大家可以对操作符有更深一部的理解。

我们大家都知道对于任何一门语言都提供了多种多样化的操作符,VB.NET也不例外。VB.NET操作符一般分为:算术运算符,赋值运算符,比较运算符,逻辑运算符,其它。本文只以几个小例子来介绍其中一些比较重要的应用。大家来看看吧。

在本文中将会用到一个自定义类dog ,代码如下:

  1. Public Class dogClass dog  
  2. Private s_name As String  
  3. Private s_color As Color  
  4. Private s_age As Integer  
  5. Public Sub New()Sub New()  
  6. s_name = "塞北的雪" 
  7. s_age = 22 
  8. s_color = System.Drawing.Color.Red  
  9. End Sub  
  10. Public Property Name()Property Name() As String  
  11. Get  
  12. Return s_name  
  13. End Get  
  14. Set(ByVal value As String)  
  15. s_name = valueEnd SetEnd Property  
  16. Public Property Color()Property Color() As Color  
  17. Get  
  18. Return s_color  
  19. End Get  
  20. Set(ByVal value As Color)s_color = valueEnd Set  
  21. End PropertyPublic Property Age()Property Age() As IntegerGetReturn s_age  
  22. End GetSet(ByVal value As Integer)s_age = valueEnd Set  
  23. End PropertyPublic Shared Operator +(ByVal a As dog, ByVal b As dog)  
  24. Dim c As New dogc.Name = a.Name + b.Namec.Age = a.Age + b.Agec.Color = Color.FromArgb((a.Color.ToArgb + b.Color.ToArgb) / 2)  
  25. Return cEnd OperatorEnd Class  

1、Is运算符

Is运算符比较两个“引用对象”是否引用了同一实例。 例子如下:

  1. Dim a As New dog  
  2. Dim b As New dog()If a Is b Then  
  3. MsgBox("True")Else  
  4. MsgBox("False")  
  5. End Ifb = ab.Name = "North  
  6. Snow"If a Is b Then  
  7. MsgBox("True")Else  
  8. MsgBox("false")  
  9. End If'false'true   

2、VB.NET操作符重载

我们可以根据需要对操作符进行重载,本文中的dog 类就对+ 操作符进行了重载操作。此时对两个dog 类进行相加时,会返回一个dog 类实例 ,他的Name是那两个dog 实例的名字相加,年龄也是dog 实例的年龄之和,颜色是两个颜色的平均值。例子如下:

  1. Dim sb As New System.Text.StringBuilder  
  2. Dim m As New dogDim n As New dog  
  3. Dim c As dogm.Name = "NorthSnow"c = m + n  
  4. sb.AppendLine()  
  5. sb.Append(m.Name)  
  6. sb.Append("--")  
  7. sb.Append(m.Age)  
  8. sb.Append("--")  
  9. sb.Append(m.Color.ToArgb)  
  10. sb.AppendLine()  
  11. sb.Append(n.Name)  
  12. sb.Append("--")  
  13. sb.Append(n.Age)  
  14. sb.Append("--")  
  15. sb.Append(n.Color.ToArgb)  
  16. sb.AppendLine()  
  17. sb.Append(c.Name)  
  18. sb.Append("--")  
  19. sb.Append(c.Age)  
  20. sb.Append("--")  
  21. sb.Append(c.Color.ToArgb)  
  22. MsgBox(sb.ToString)'  
  23. NorthSnow--22---65536'塞北的雪--22---65536'NorthSnow塞北的雪--44---65536   

3、like操作符
like操作符用于判断一个字符串与另外一个字符串是否匹配,大小写敏感。语法是:Result=String like Pattern。             

例子如下:

  1. Dim a As String = "Northsnow,塞北的雪" 
  2. Dim b As String = "Northsnow,塞北的雪" 
  3. If a Like b ThenMsgBox("true")ElseMsgBox("false")  
  4. End Ifb = "northsnow,塞北的雪" 
  5. If a Like b ThenMsgBox("true")ElseMsgBox("false")  
  6. End If'true'false   

另外,Pattern支持通配符。这一点肯定让我们想起了正则表达式(Regular Expression)。不过我们千万不要搞混了,虽然有些地方相近,但是有些通配符与正则表达式不太一样,功能也有区别。like操作符支持的通配符共有5种:

◆?   表示一个任意字符(1个)
◆*   任意个任意字符(0-n个)
◆#   表示一个数字
◆[charlist]  表示 charlist 中的任意一个字符
◆[!charlist]  表示 不在charlist 中的任意一个字符

用过正则的朋友一定会很容易的理解的,有几个核心的规则一定要记牢,那就是:
(1) * 可以匹配任何字符串
(2) ?可以匹配任何一个字符
(3) 而# 相当于[0-9] 只能匹配一个数字 如果要匹配两个数字需要写成 ##
(4) 字符列表中的字符可以用-提供一个区间,以简化书写。
(5) 大小写敏感

下面就举几个例子说明一下:

  1. Dim a As String = "Northsnow.123" 
  2. Dim b As String = "*.###"MsgBox(a Like b)  
  3. 'Truea  = "Northsnow.123"b  = "[A-Z][a-z]*#"MsgBox(a Like b)  
  4. 'Truea  = "Northsnow.123"b  = "[A-Z][a-z]*[a-z]"MsgBox(a Like b)  
  5. 'Falsea = "Northsnow.123"b = "[A-Z][a-z]*[0-9]"MsgBox(a Like b)  
  6. 'True   


4、其它的一些特殊VB.NET操作符
AndAlse,OrElse与and 和or 差不多,只是他们比后者更智能,当前面的判断已经确定了返回值的时候,后面的表达式的值就不再计算了。
TypeOf  返回当前对象的类型,每一个类都有一个getType方法与它很相似,举一个小例子如下:

  1. Dim a As New dogDim b As New dogDim c As Typec = a.GetTypeMsgBox(c.ToString)  
  2. If TypeOf (a) Is vb1.Form7.dog ThenMsgBox(True)  
  3. End If'vb1.Form7+dog'True   


就说这么多吧!已有在应用中如果在总结出什么好的经验,再慢慢补充。

【编辑推荐】

  1. 实例讲述VB.NET使用Log4Net
  2. 三分钟学会VB.NET转换形态
  3. VB.NET获取硬盘信息四大法宝
  4. 讲述VB.NET调用Excel的好处
  5. 简单例子概述VB.NET新窗体
责任编辑:田树 来源: qqread
相关推荐

2010-01-14 13:35:36

VB.NET特殊操作符

2010-01-14 13:27:33

VB.NET操作符li

2009-10-26 14:18:46

2010-01-21 14:49:44

VB.NET操作Wor

2010-01-11 18:46:15

VB.NET修饰符

2010-01-20 14:06:36

VB.NET运算符组合

2010-01-11 18:21:22

VB.NET获取硬盘信

2010-01-20 15:01:26

VB.NET组件显示时

2010-01-12 16:39:26

VB.NET数据绑定

2009-10-28 09:21:19

VB.NET技术

2009-11-03 10:51:33

VB.NET共享

2009-11-10 13:08:13

VB.NET编程技巧

2009-11-02 13:14:18

VB.NET函数

2010-01-20 17:54:13

VB.NET特殊字符

2009-10-28 10:09:07

VB.NET Dire

2009-11-02 10:42:04

VB.NET EXCE

2009-10-09 16:54:03

VB.NET窗体

2010-01-22 10:27:02

VB.NET类型提升

2010-01-15 13:52:42

VB.NET属性设置

2009-10-28 14:44:43

VB.NET Name
点赞
收藏

51CTO技术栈公众号