重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
逻辑运算符用于构成逻辑表达式,从而实现逻辑判断功能。逻辑运算符包括逻辑与(And),逻辑非(Not),逻辑或(Or),逻辑异或(Xor),逻辑相等(Eqv)和逻辑蕴含(Imp)。
创新互联建站是一家网站设计公司,集创意、互联网应用、软件技术为一体的创意网站建设服务商,主营产品:响应式网站设计、品牌网站制作、全网整合营销推广。我们专注企业品牌在网站中的整体树立,网络互动的体验,以及在手机等移动端的优质呈现。成都网站设计、做网站、成都外贸网站建设公司、移动互联产品、网络运营、VI设计、云产品.运维为核心业务。为用户提供一站式解决方案,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏析悦目的作品,网站的价值服务。
(1)逻辑与And
逻辑与的语法为:
当且仅当两个表达式expressionl莉expression2都为真时,其结果result才为真则当两个表达式中有一个为假时,其结果必为假False。
(2)逻辑非Not
逻辑非的语法为:
Not为单目运算符,后跟的expression为关系表达式或算术表达式。
当关系表达式为True时,其结果为False;当关系表达式为False时,结果为Tme。
当算术表达式取值为1时,结果为0;当算术表达式取值为0时,结果为1。
(3)逻辑或Or
逻辑或的语法为:
当Or两边的表达式中有一个为True时,结果result就为TRUE;只有两个表达式均为FALSE时,其结果才为False。
(4)逻辑异或Xor
逻辑异或的语法为:
所谓的“异或",就是当两个表达式的值不同时(即一个为True,另一个为FALSE),其结果为True;当两个表达式的值相同(都为True或都为False)时,结果为False。也就是“异"则“真”,“同”则“假”。
(5)逻辑相等Eqv
逻辑等价运算的语法为:
逻辑“相等"与“异或"运算是一对互逆运算符,即当两个表达式的值相同(都为True或都为False) 寸,其结果为True;当两个表达式的值不同(一个为True,另一个为False)时,其结果为False。只要表达式中有一个为Null,则结果为Null。
(6)逻辑蕴含Imp
逻辑蕴含的语法为:
result=expres sion l Imp expression2
“蕴含"逻辑的真值表见表2-9,只有当第一个表达式expressionl为True,第二个表达式expreesion2为False时,结果才为False,其他情况下结果均为True。
注:本文章来源于网络,非原创。希望能对您有用!
你那个不是空格吧,是不是多余的tab呢,这样试试
Dim b As String = replace(Trim(strItemValue(i+1)),chr(9),"")
#If...Then...#Else 指令
根据条件编译选定的 Visual Basic 代码块,需要有#Const 配对,一般要先用#Const 定义条件编译器常量
'以下是例子
Module Module1
#Const i = 60
Sub Main()
#If i 30 Then
Console.WriteLine("???") '如果用#Const定义了i,该句语句才会执行,假如用的是private i as integer=60定义,该语句不会被执行
#End If
End Sub
End Module
AndAlso是短路的逻辑与运算符,And有两个含义:非短路的逻辑与运算符;按位与运算符
Dim c=a AndAlso b表达式中,若表达式a的计算结果是False,无论表达式b是什么样,都不再进行计算,直接返回c的值
Dim c=a And b表达式中,无论a和b是怎样的表达式,都要全部计算完成后再返回c的值
AndAlso相比And的区别,除了性能优势外,更重要的是,从语义上来说
If a Then
If b Then
End If
End If
等价于If a AndAlso b Then而不等价于If a And b Then
考虑这种情况:
Dim m As ClassM=****
Dim c=m IsNot Nothing AndAlso m.Succeeded
这种实际编程中经常遇到的判断,如果把AndAlso替换成And,在m Is Nothing的情况下会引发NullReferenceException空引用异常,而AndAlso能确保不会引发空引用异常
进行逻辑运算的时候,And只在一种情况下有价值:不仅想要得到c的值,而且无论如何都希望执行b过程,并且自己能确保a=False不会影响b的执行。其他情况下务必使用AndAlso
OrElse和Or同理,作为上面那句的逆判断
Dim c=m Is Nothing OrElse m.Failed
也是经常使用的。当然在进行位运算时,只能用And和Or,AndAlso和OrElse没有位运算功能
msgbox的返回值是一个枚举值
if msgbox (“”)=1 then
end if
如果是要判断引用类型可以用TypeOf来判断
Dim s = "666"
If TypeOf (s) Is String Then
Debug.Print("string")
Else
Debug.Print("not string")
End If
如果不知道是否是引用类型,可以这样判断:
Dim s = 666
If VarType(s) = VariantType.String Then
Debug.Print("string")
Else
Debug.Print("not string")
End If
或者:
Dim s = 666
If s.GetType = "".GetType Then
Debug.Print("string")
Else
Debug.Print("not string")
End If