vb.net-在这种情况下,如何替换GoTo?

vb.net-在这种情况下,如何替换GoTo?,vb.net,console,case,goto,Vb.net,Console,Case,Goto,GoTo过去常常在一个案例完成后返回菜单,因为使用GoTo是不好的做法,我还能做什么?谢谢 Menu: Console.WriteLine("----------------------") Console.WriteLine("1 = option1") Console.WriteLine("2 = option2") Console.WriteLine("--------------------

GoTo过去常常在一个案例完成后返回菜单,因为使用GoTo是不好的做法,我还能做什么?谢谢

Menu:
            Console.WriteLine("----------------------") 
            Console.WriteLine("1 = option1")
            Console.WriteLine("2 = option2")
            Console.WriteLine("----------------------")
            Console.Write("Select an option: ")
            opts = Console.ReadLine 
            Console.WriteLine("----------------------")
                Select Case opts
                    Case 1
Happening:
                        Try 
                            Console.Write("Enter a word: ")
                            word = Console.ReadLine 
                            Select Case word.ToLower  
                               Case Eng(0)
                                    Console.WriteLine(Fre(0))
                                Case Eng(1)
                                    Console.WriteLine(Fre(1))
                            GoTo Menu
                            End Select
                        Catch ex As Exception
                            Console.WriteLine("Invalid input")
                        End Try
下面是伪代码

Dim goodResultExists As Boolean = False
While Not goodResultExists
 Console.Write("Enter a word: ")
                        word = Console.ReadLine 
                        Select Case word.ToLower  
                            case "Ok"
                            goodResultExists = True
                            Case Else
                            Console.Write("Invalid Entry")

                        End Select
End While

您需要一个布尔变量来控制包含代码的while循环的出口

当布尔变量为true时,继续循环读取用户输入,处理它并重新打印菜单选项。将布尔变量设置为false将终止循环。
别忘了提供终止程序的选项

Dim runLoop = true
while runLoop
  Console.WriteLine("----------------------") 
  Console.WriteLine("1 = option1")
  Console.WriteLine("2 = option2")
  Console.WriteLine("3 = EXIT")
  Console.WriteLine("----------------------")
  Console.Write("Select an option: ")
  opts = Console.ReadLine 
  Console.WriteLine("----------------------")
  Select Case opts
      Case "1"
        Try 
           Console.Write("Enter a word: ")
           word = Console.ReadLine 
           Select Case word.ToLower  
               Case Eng(0)
                   Console.WriteLine(Fre(0))
               Case Eng(1)
                    Console.WriteLine(Fre(1))
                    runLoop = false
           End Select
       Catch ex As Exception
            Console.WriteLine("Invalid input")
       End Try           
      case "2"
           .....
      case "3"
           runLoop = false
    End Select
 End While

你尝试过创建函数吗?@CamiloR Complete初学者,虽然我尝试过某些循环和函数,但迄今为止没有一个对我有效,尽管这可能是因为我缺乏知识。你可能想创建一个布尔值。然后当他们进入一些好的东西时,将其设置为真。dim GoodEntry以布尔值=false的形式存在。而(goodEntryExists=false)(您的所有代码)……当他们输入您喜欢的内容时,设置goodEntryExists=true。差不多吧。