Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menggunakan pernyataan bersyarat dalam Go?

Bagaimana untuk menggunakan pernyataan bersyarat dalam Go?

WBOY
WBOYasal
2023-05-11 16:03:241239semak imbas

Dalam Go, pernyataan bersyarat ialah salah satu kunci untuk mengawal aliran program. Apabila menulis kod, kita selalunya perlu menggunakan pernyataan bersyarat untuk melaksanakan kawalan logik tertentu. Dalam artikel ini, kita akan membincangkan cara menggunakan pernyataan bersyarat dalam bahasa Go.

  1. Pernyataan If

Pernyataan if ialah salah satu pernyataan bersyarat yang paling biasa dalam Go. Ia menentukan sama ada untuk melaksanakan blok kod berdasarkan nilai ungkapan Boolean. Berikut ialah struktur sintaks asas pernyataan if:

if condition {
   //if block of code
}

Antaranya, syarat ialah ungkapan Boolean, yang boleh menjadi sebarang ungkapan yang mengembalikan nilai Boolean. Apabila ungkapan ini dinilai kepada benar, kod dalam pernyataan if dilaksanakan. Contohnya:

if x > 10 {
   fmt.Println("x is greater than 10")
}

Dalam contoh ini, jika nilai x lebih besar daripada 10, "x lebih besar daripada 10" akan dikeluarkan.

Sudah tentu, anda juga boleh menambah klausa lain dalam pernyataan if Kod ini akan melaksanakan syarat dalam blok if jika syarat tidak dipenuhi:

if condition {
   //if block of code
} else {
   //else block of code
}

Contohnya:

if x > 10 {
   fmt.Println("x is greater than 10")
} else {
   fmt.Println("x is less than or equal to 10")
}

Ini Dalam contoh, jika nilai x lebih besar daripada 10, "x lebih besar daripada 10" akan dikeluarkan, jika tidak "x kurang daripada atau sama dengan 10" akan menjadi output.

Selain if and else, anda juga boleh menambah pernyataan else if untuk mengendalikan lebih banyak situasi:

if condition1 {
   //if block of code
} else if condition2 {
   //else if block of code
} else {
   //else block of code
}

Contohnya:

if x > 10 {
   fmt.Println("x is greater than 10")
} else if x > 5 {
   fmt.Println("x is greater than 5 and less than or equal to 10")
} else {
   fmt.Println("x is less than or equal to 5")
}

Dalam contoh ini, jika x Jika nilai lebih besar daripada 10, "x lebih besar daripada 10" akan dikeluarkan Jika nilai x lebih besar daripada 5 dan kurang daripada atau sama dengan 10, "x lebih besar daripada 5 dan kurang daripada atau sama dengan 10" akan menjadi. output Jika tidak, "x adalah kurang daripada atau sama dengan 5".

    Tukar pernyataan
Berbanding dengan pernyataan if, pernyataan suis lebih logik dan boleh dibaca. Dalam Go, pernyataan suis terdiri daripada berbilang blok kes dan blok lalai pilihan. Apabila syarat kes tertentu dipenuhi, blok kod yang sepadan akan dilaksanakan. Berikut ialah struktur sintaks asas pernyataan suis:

switch expression {
   case value1:
      //case 1 block of code
   case value2:
      //case 2 block of code
   ...
   case valueN:
      //case N block of code
   default:
      //default block of code
}

Antaranya, ungkapan ialah ungkapan yang perlu disemak, yang boleh berupa apa-apa jenis ungkapan. nilai1, nilai2, ..., nilaiN ialah nilai yang perlu disemak. Jika nilai ungkapan adalah sama dengan nilai tertentu, blok kod yang sepadan akan dilaksanakan jika nilai ungkapan tidak sama dengan sebarang nilai, blok lalai akan dilaksanakan.

Contohnya:

switch day {
   case 1:
      fmt.Println("Monday")
   case 2:
      fmt.Println("Tuesday")
   case 3:
      fmt.Println("Wednesday")
   case 4:
      fmt.Println("Thursday")
   case 5:
      fmt.Println("Friday")
   case 6:
      fmt.Println("Saturday")
   case 7:
      fmt.Println("Sunday")
   default:
      fmt.Println("Invalid day")
}

Dalam contoh ini, jika nilai hari ialah 1, maka keluarkan "Isnin", jika nilai hari ialah 2, kemudian keluarkan "Selasa", dan seterusnya pada. Jika tiada kes yang sepadan dengan nilai hari, "Hari tidak sah" akan dikeluarkan.

    Select statement
Select statement ialah pernyataan khas dalam Go, digunakan untuk mengendalikan komunikasi saluran. Pada bila-bila masa, anda boleh menggunakan pilih untuk menunggu operasi berbilang saluran. Ia menyekat sehingga salah satu saluran mengembalikan data. Berikut ialah struktur sintaks asas pernyataan pilih:

select {
   case communication1:
      //communication1 block of code
   case communication2:
      //communication2 block of code
   ...
   case communicationN:
      //communicationN block of code
   default:
      //default block of code
}

Antaranya, komunikasi1, komunikasi2,..., komunikasiN ialah operasi saluran yang akan dilakukan. Apabila mana-mana saluran mengembalikan data, blok kod yang sepadan akan dilaksanakan. Jika tiada data dikembalikan daripada mana-mana saluran, blok lalai akan dilaksanakan.

Contohnya:

select {
   case <- channel1:
      fmt.Println("Received from channel1")
   case <- channel2:
      fmt.Println("Received from channel2")
   default:
      fmt.Println("No data received")
}

Dalam contoh ini, jika saluran1 mengembalikan data, keluarkan "Diterima daripada saluran1", jika saluran2 mengembalikan data, keluarkan "Diterima daripada saluran2", jika tidak Jika mana-mana saluran kembali data, "Tiada data diterima" akan dikeluarkan.

Ringkasan

Pernyataan bersyarat dalam Go termasuk penyataan if, tukar penyataan dan pilih penyataan. Pernyataan if menentukan sama ada untuk melaksanakan blok kod berdasarkan ungkapan Boolean dan lain-lain jika klausa boleh ditambah mengikut keperluan. Pernyataan suis melaksanakan blok kod yang sepadan berdasarkan nilai ungkapan, termasuk blok berbilang huruf besar dan blok lalai pilihan. Pernyataan pilih digunakan untuk mengendalikan komunikasi saluran Pada bila-bila masa, anda boleh menggunakan pilih untuk menunggu operasi berbilang saluran. Pernyataan bersyarat ini boleh membantu kami melaksanakan kawalan logik yang kompleks dan meningkatkan kebolehbacaan dan kebolehselenggaraan kod.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan pernyataan bersyarat dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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