Cara menulis kod dalam golang

王林
Lepaskan: 2023-05-15 11:50:07
asal
584 orang telah melayarinya

Sebagai bahasa pengaturcaraan yang agak muda, Golang semakin mendapat perhatian dan diminati, terutamanya dalam bidang pembangunan back-end. Artikel ini akan memperkenalkan sintaks asas dan paradigma pengaturcaraan biasa Golang untuk membantu pemula bermula dengan cepat.

1. Sintaks asas

  1. Pembolehubah

Terdapat banyak cara untuk mengisytiharkan pembolehubah anda boleh menggunakan kata kunci var atau operator := jenis potongan:

var i int // 默认值为0
i = 10 

j := "Hello World" // 自动推导类型为string
Salin selepas log masuk
  1. Malar

Kehidupan malar menggunakan kata kunci const, yang boleh digunakan untuk jenis terhitung, nilai, rentetan, dsb.:

rreee
  1. Struktur kawalan

Struktur kawalan bahasa Go adalah sama seperti bahasa lain, termasuk if-else, suis-case, untuk pernyataan gelung dan lompat:

const (
    Pi     = 3.14159265358979323846
    Apples = 1 << iota  // Apples的值是1左移0位,即1
    Oranges            // Oranges的值是1左移1位,即2
    Bananas            // Bananas的值是1左移2位,即4
)
Salin selepas log masuk
  1. Tatasusunan dan kepingan

Tatasusunan ialah jenis nilai, dan panjang ditentukan apabila diisytiharkan, manakala kepingan ialah jenis rujukan dan panjangnya berubah secara dinamik. Slices boleh dibuat melalui fungsi make atau dijana dengan operasi menghiris:

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

switch {
    case i < 0:
        fmt.Println("i is negative")
    case i > 0:
        fmt.Println("i is positive")
    default:
        fmt.Println("i is zero")
}

for i := 0; i < 10; i++ {
    fmt.Println(i)
}

// 跳转语句
goto label1
fmt.Println("this line will never get executed")
label1:
fmt.Println("jumped to label1")
Salin selepas log masuk
  1. Struktur dan penunjuk

Struktur di Golang bukan sahaja boleh mentakrifkan kaedah. Jenis penunjuk struktur boleh menggunakan operator . dan -> untuk mengakses medan dan kaedah:

// 数组
var arr [5]int
for i := 0; i < 5; i++ {
    arr[i] = i
}

// 切片的创建和操作
var slice1 []int = arr[1:3]
slice2 := make([]int, 5, 10) // 第2个参数是长度,第三个参数是容量
slice2 = append(slice2, 1, 2, 3)
Salin selepas log masuk

2. Paradigma Pengaturcaraan

  1. Pengaturcaraan Berorientasikan Objek

Pengaturcaraan berorientasikan objek di Golang juga sangat bergantung pada struktur dan kaedah. Di sini kita boleh menggunakan jenis antara muka untuk mentakrifkan kaedah yang dikongsi:

type Person struct {
    name string
    age  int
}

func (p Person) SayHello() {
    fmt.Println("Hello, my name is", p.name, ", and I am", p.age, "years old.")
}

func main() {
    p := Person{name: "Alice", age: 30}
    p.SayHello()
    pp := &p
    fmt.Println(pp.age)
}
Salin selepas log masuk
  1. Pengaturcaraan serentak

Golang ialah bahasa yang secara semula jadi menyokong pengaturcaraan serentak. Menggunakan dua konsep goroutine dan saluran, kami boleh dengan mudah melaksanakan program serentak yang cekap:

type Animal interface {
    Speak() string
}

type Dog struct {
    name string
}

func (d Dog) Speak() string {
    return "Woof! I am " + d.name
}

func main() {
    d := Dog{"Fido"}
    fmt.Println(d.Speak())
}
Salin selepas log masuk

Di atas ialah sintaks asas dan paradigma pengaturcaraan Golang yang lebih maju dan perbincangan senario aplikasi praktikal memerlukan kemahiran Selepas menguasai bahasa, teruskan kepada kajian dan penyelidikan yang lebih mendalam.

Atas ialah kandungan terperinci Cara menulis kod dalam golang. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!