Replikasi Do While Loop dalam Go
Dalam Go, konsep gelung sementara tidak berkait secara langsung dengan gelung do while Java. Walau bagaimanapun, terdapat cara untuk meniru kefungsian gelung do while menggunakan struktur gelung lain yang tersedia dalam Go.
Mari kita teliti contoh kod yang anda berikan:
var i = 1 for i > 0 { fmt.Println("Press 1 to run") fmt.Println("Press 2 to exit") var input string inpt, _ := fmt.Scanln(&input) switch inpt { case 1: fmt.Println("hi") case 2: os.Exit(2) default: fmt.Println("def") } }
Kod anda dikunci dalam gelung tak terhingga tanpa mengira input kerana keadaan gelung i > 0 sentiasa benar. Untuk meniru gelagat lakukan sambil, anda perlu menggunakan struktur gelung berbeza yang menyemak keadaan gelung hanya selepas badan gelung telah dilaksanakan.
Berikut ialah versi kod anda yang diubah suai yang mencapai kefungsian yang diingini:
var input int for { fmt.Println("Press 1 to run") fmt.Println("Press 2 to exit") n, err := fmt.Scanln(&input) if n < 1 || err != nil { fmt.Println("Invalid input") break } switch input { case 1: fmt.Println("hi") case 2: fmt.Println("Exiting...") return default: fmt.Println("Invalid input") } }
Dalam kod ini:
Kod ini menyediakan gelagat yang diingini untuk melaksanakan badan gelung sehingga pengguna secara eksplisit memilih untuk keluar.
Atas ialah kandungan terperinci Bagaimana untuk Meniru Gelung Do While dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!