Replikasi do while Loops in Go
Dalam Go, tiada persamaan langsung dengan gelung do while yang terdapat dalam banyak bahasa pengaturcaraan lain. Walau bagaimanapun, terdapat cara untuk mencapai fungsi yang sama. Satu kaedah ialah menggunakan gelung for dengan pembolehubah gelung boolean yang dimulakan kepada benar.
Kod berikut menunjukkan cara untuk meniru gelung do while dalam Go:
for ok := true; ok; ok = EXPR { // Code to be executed }
Gelung ini akan diteruskan untuk melaksanakan blok kod sehingga ungkapan EXPR dinilai palsu. Dalam konteks masalah asal, ungkapan ini ialah sama ada input pengguna sepadan dengan keadaan keluar yang diingini.
Berikut ialah versi diubah suai bagi kod yang disediakan yang melaksanakan fungsi yang diingini dengan betul:
func sample() { for ok := true; ok; ok = (input != 2) { fmt.Println("Press 1 to run") fmt.Println("Press 2 to exit") var input int fmt.Scanln(&input) switch input { case 1: fmt.Println("hi") case 2: // Exit the program os.Exit(2) default: fmt.Println("def") } } }
Dalam kod ini, gelung berterusan sehingga pengguna memasukkan 2 (untuk keluar). Jika input ialah 1, ia melaksanakan pernyataan "hai". Jika input adalah perkara lain, ia melaksanakan pernyataan "def".
Perhatikan bahawa anda boleh menggantikan os.Exit(2) dengan panggilan eksplisit untuk kembali keluar dari fungsi lebih awal.
Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Mencontohi Gelung Do While dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!