Bagaimanakah Anda Boleh Mencontohi Gelung Do While dalam Go?

Mary-Kate Olsen
Lepaskan: 2024-11-13 13:40:02
asal
342 orang telah melayarinya

How Can You Emulate a Do While Loop in Go?

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
}
Salin selepas log masuk

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")
    }
  }
}
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan