我在尝试使用线性搜索来查找用户在数组中输入的名称时遇到此错误。这是我声明数组并获取输入的时候。
Public Const SIZE_ARRAY = 9
Public Sub cmdStart_Click(sender As Object, e As EventArgs) Handles cmdStart.Click
Dim myArray(SIZE_ARRAY) As String
Dim index As Integer
Public Sub cmdStart_Click(sender As Object, e As EventArgs) Handles cmdStart.Click
Dim count As Integer = 0
For Me.index = 0 To SIZE_ARRAY
myArray(index) = InputBox("Enter a name, Enter a name")
count = count + 1
Next
If count = 10 Then
lblInstructions.Visible = False
cmdStart.Visible = False
lblInstructions2.Visible = True
txtSearch.Visible = True
lblOutput.Visible = True
cmdSearch.Visible = True
End If
End Sub
这是我使用线性搜索的地方。
Public Sub cmdSearch_Click(sender As Object, e As EventArgs) Handles cmdSearch.Click
Dim found As Boolean
Dim name As String
name = txtSearch.Text
found = LinearSearch(myArray, Val(name))
If found Then
lblOutput.Text = name & " was found at cell " & index
Else
lblOutput.Text = name & " was not found"
End If
End Sub
这是线性搜索功能
Public Function LinearSearch(ByVal list() As Integer, ByVal searchValue As Integer) As Boolean
Dim found As Boolean = False
Dim index As Integer
While found = False And index <= UBound(list)
If list(index) = searchValue Then
found = True
Else
index += 1
End If
End While
Return found
End Function