我的问题是我无法理解 Do While Not blFound And intCounter < intPoitns.Length 的逻辑,因为为了在循环开始执行时执行两个语句都必须为真,所以如果 Not blFound 意味着它是真的,但它是分配的布尔值 false,那么为什么循环执行并且不仅适用于 blFound 或也适用于 intCounter。它看起来很容易,但如果有人能用非常简单的语言解释它,我的大脑不会同时处理它。感谢您的时间!
这是示例:假设 intValidNumbers 是一个整数数组。编写代码在数组中搜索值 247。如果值为 founf,则显示消息它在数组中的位置。如果未找到,则显示一条消息指示。
Dim intPoitns() As Integer = {11, 42, 322, 24, 247}
Dim strInput As String = InputBox("Enter integer", "Data needed")
Dim intInput As Integer
Dim blFound As Boolean = False
Dim intCounter As Integer = 0
Dim intPosition As Integer
If Integer.TryParse(strInput, intInput) Then
Do While Not blFound And intCounter < intPoitns.Length
If intPoitns(intCounter) = intInput Then
blFound = True
intPosition = intCounter
End If
intCounter += 1
Loop
Else
MessageBox.Show("have to enter integer number")
End If
If blFound Then
lblResult.Text = ("You found" & intPosition + 1)
Else
lblResult.Text = ("not Found")
End If