任何人都可以解释为什么visual studio不喜欢或在if语句中。
我知道我可以使用elseif
完成相同的工作,但我想了解为什么或不起作用。
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim input As String = "asdcessssf"
Dim count As Integer
Dim totalchar As Integer
Dim final As Integer
For Each ch As Char In input
If ch = "a" Or "e" Then
count += 1
totalchar += 1
Else
totalchar += 1
End If
Next
final = (count / totalchar) * 100
MsgBox(final)
End Sub
End Class
答案 0 :(得分:1)
你正在以错误的方式制定条件。这应该是ch = "a" Or ch="e"
。您在ch =
Or
答案 1 :(得分:0)
在布尔比较中,Or运算符始终计算两个表达式,包括进行过程调用。 OrElse运算符(Visual Basic)执行短路,这意味着如果expression1为True,则不计算expression2。 您可以使用OrElse来获得短路行为。
答案 2 :(得分:0)
与" pmatyszok"解释您在"ch="e"
之后遗漏了or
,我建议您也将您的代码视为:
For Each ch As Char In input
If ch = "a" Or ch = "e" Then count += 1
totalchar += 1
Next