Heim >Backend-Entwicklung >Golang >Wie implementiert man eine „do while'-Schleife in Go?

Wie implementiert man eine „do while'-Schleife in Go?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-11 09:05:02315Durchsuche

How to Implement a

Go-Äquivalent von Javas „do while“-Schleife

In Java ermöglicht eine „do while“-Schleife die Ausführung eines Codeblocks mindestens einmal, bevor Sie nach einer Exit-Bedingung suchen. Go hat keine explizite „do while“-Schleife, kann aber mithilfe einer for-Schleife repliziert werden, wobei eine boolesche Schleifenvariable auf „true“ gesetzt ist.

Korrigierter Code:

Um das Problem mit der Endlosschleife in Ihrem Code zu beheben, müssen Sie die Schleifenbedingung aktualisieren, um zu prüfen, ob die Benutzereingabe gleich 2 ist (was auf ein Beenden hinweist). Darüber hinaus sollten Sie ungültige Benutzereingaben behandeln.

Hier ist der korrigierte Code:

func sample() {
    var input int
    for ok := true; ok; ok = (input != 2) {
        fmt.Println("Press 1 to run")
        fmt.Println("Press 2 to exit")
        var inpt, err = fmt.Scanln(&input)
        if inpt < 1 || err != nil {
            fmt.Println("Invalid input")
            break
        }

        switch input {
        case 1:
            fmt.Println("hi")
        case 2:
            // User chose to exit
        default:
            fmt.Println("def")
        }
    }
}

Das obige ist der detaillierte Inhalt vonWie implementiert man eine „do while'-Schleife in Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn