关于vb.net中的and
Dim errorNo As Integer
errorNo = 399
If errorNo = 0 Then
Me.Label1.Text = 0
Else
If (errorNo And 1) Then
Me.Label1.Text = 1
End If
If (errorNo And 2) Then
Me.Label1.Text = 2
End If
If (errorNo And 4) Then
Me.Label1.Text = 4
End If
End If
请问下以上代码中的If (errorNo And 1) Then表示的逻辑是什么?看起来是按位运算的,里面的 errorNo And 1 难道是返回一个布尔类型吗?
[解决办法]
VB中,0表示false,非0表示true。
[解决办法]
诺,试下andAlso和And区别。
[解决办法]
[解决办法]
[解决办法]
结果还是 Me.Label1.Text =124
[解决办法]
楼上的说错咯。
正确解答:1:and是逻辑运算符,and必须满足全部条件为真才为真。
2:如果逻辑运算符对数值进行运算,则为数字的二进制值逐位进行逻辑运算。and运算常用于把屏蔽某些位置。 如:12 and 7 表示1100于0111进行运算,得到二进制值100,十进制的值是4。
楼主是用的是不是跟我例子是一样的?