Heim > Backend-Entwicklung > Golang > Golang – Wenn jeder Fall im Switch-Fall ausgewertet wird, wie ist die Reihenfolge?

Golang – Wenn jeder Fall im Switch-Fall ausgewertet wird, wie ist die Reihenfolge?

WBOY
Freigeben: 2024-02-08 22:21:09
nach vorne
553 Leute haben es durchsucht

Golang - 如果 switch case 中的每个 case 都进行评估,那么顺序是什么?

php-Redakteur Baicao ist hier, um eine Frage zu Golang zu beantworten: „Wenn jeder Fall im Switch-Fall ausgewertet wird, wie ist die Reihenfolge?“ In Golang ist die Ausführungsreihenfolge der Switch-Anweisungen von oben nach unten werden in der Reihenfolge der Fälle im Code ausgewertet. Sobald ein Fall erfolgreich abgeglichen wurde, wird der entsprechende Codeblock ausgeführt und das Programm springt dann aus der Switch-Anweisung heraus. Wenn kein passender Fall vorhanden ist, wird die Standardanweisung (sofern vorhanden) ausgeführt. Wenn keine Standardanweisung vorhanden ist, wird die Switch-Anweisung direkt beendet. Dies sind die Reihenfolge und Ausführungsregeln von Switch-Fällen in Golang.

Frageninhalt

Angenommen, wir haben einen Schaltkasten

switch {
  case true:
   fmt.Println(1)
  case true:
   fmt.Println(2)
Nach dem Login kopieren

Was wird ausgegeben?

Ich habe gehört, dass Golang pseudozufällige Ausdrücke wählt, aber ich habe es in Go-Playground getestet und festgestellt, dass es der Reihenfolge von oben nach unten folgt, sodass die Ausgabe 1 lautet.

Problemumgehung

Führen Sie den ersten mit Cases aus gepaart mit der switch-Anweisung:

https://www.php.cn/link/77772713a7d7e02b10ca9bd90e4f6a31

Wenn mehrere Zweige zum Fortfahren bereit sind, erfolgt die pseudozufällige Auswahl in der select-Anweisung statt in der switch.

Das obige ist der detaillierte Inhalt vonGolang – Wenn jeder Fall im Switch-Fall ausgewertet wird, wie ist die Reihenfolge?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:stackoverflow.com
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage