Sebagai bahasa pengaturcaraan taip statik sumber terbuka, bahasa Go telah digemari oleh semakin ramai pembangun sejak beberapa tahun kebelakangan ini. Struktur sintaksnya yang ringkas dan kelajuan penyusunan yang cekap menjadikannya digunakan secara meluas dalam pengkomputeran awan, data besar, pengaturcaraan rangkaian dan bidang lain. Artikel ini akan menganalisis secara mendalam struktur tatabahasa bahasa Go dan membantu pembaca lebih memahami dan menguasai ciri-ciri bahasa Go melalui contoh kod tertentu.
1. Sintaks asas
var
untuk mengisytiharkan pembolehubah, dan kemudian gunakan =
untuk menetapkan nilai. Berikut ialah contoh mudah: var
来声明变量,然后使用=
来进行赋值。下面是一个简单的示例:var a int a = 10
也可以将声明和赋值合并到一行:
var b string = "Hello, World!"
如果变量类型可以通过初始值推断,则可以省略变量类型:
c := 5
func
来定义函数。函数可以有多个参数,并且可以返回多个值。下面是一个计算两个整数之和的函数示例:func add(x, y int) int { return x + y }
if
、for
、switch
等。下面是一个使用if
语句的示例:if a > 10 { fmt.Println("a大于10") } else { fmt.Println("a不大于10") }
&
可以获取变量的地址,使用*
var p *int var q int q = 10 p = &q fmt.Println(*p)
var slice []int slice = []int{1, 2, 3, 4, 5}
type Person struct { Name string Age int } func main() { p := Person{Name: "Alice", Age: 25} fmt.Println(p.Name, p.Age) }
func
untuk mentakrifkan fungsi. Fungsi boleh mempunyai berbilang parameter dan boleh mengembalikan berbilang nilai. Berikut ialah contoh fungsi yang mengira jumlah dua integer: func hello() { fmt.Println("Hello, goroutine!") } func main() { go hello() fmt.Println("Main function") time.Sleep(1 * time.Second) }
if
, for</ kod> , <kod>tukar
, dsb. Berikut ialah contoh penggunaan pernyataan if
: ch := make(chan int) go func() { ch <- 10 }() fmt.Println(<-ch)
&.
Untuk mendapatkan alamat pembolehubah, gunakan *
untuk mendapatkan nilai yang ditunjukkan oleh penunjuk. Berikut ialah contoh penunjuk mudah: rrreeeAtas ialah kandungan terperinci Analisis mendalam tentang struktur tatabahasa bahasa Go. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!