如何阻止我的代码迭代整个字符串,说明来自用户的输入是否与随机字符串的输入匹配,记住这是一个刽子手游戏,我希望代码只显示一次如果用户选择字母是正确的还是不正确的,而不是显示八次。
Sub letterInput()
For i As Integer = 0 To randomWord.Length - 1
If userInput = randomWord(i) Then
MessageBox.Show("correct")
ElseIf userInput <> randomWord(i) Then
MessageBox.Show("incorrect")
Label4.Text = counter
Exit for
End If
Next
End Sub
Sub wordGeneration()
Dim wordUsed As Array = {"pizza", "noodle", "zombie", "object", "rowin", "running", "elephant", "lion"}
Dim random As New Random
randomWord = wordUsed(random.Next(0, 9))
Label2.Text = randomWord
End Sub
答案 0 :(得分:0)
我在评论中的意思是你只需要用简单的if / else替换你的for循环。 String.Contains已经检查了整个字符串,因此不再需要遍历每个字母:
Sub letterInput()
If randomWord.Contains(userInput) Then
MessageBox.Show("correct")
Else
MessageBox.Show("incorrect")
Label4.Text = counter
End If
End Sub