Go 語言基礎語法

Go 語言基礎語法

上一章節我們已經瞭解了 Go 語言的基本組成結構,本章節我們將學習 Go 語言的基礎語法。


Go 標記

Go 程式可以由多個標記組成,可以是關鍵字,識別符號,常量,字串,符號。如以下 GO 語句由 6 個標記組成:

fmt.Println("Hello, World!")

6 個標記是(每行一個):

1. fmt
2. .
3. Println
4. (
5. "Hello, World!"
6. )

行分隔符

在 Go 程式中,一行代表一個語句結束。每個語句不需要像 C 家族中的其它語言一樣以分號 ; 結尾,因為這些工作都將由 Go 編譯器自動完成。

如果你打算將多個語句寫在同一行,它們則必須使用 ; 人為區分,但在實際開發中我們並不鼓勵這種做法。

以下為兩個語句:

fmt.Println("Hello, World!")
fmt.Println("入門教學:itread01.com")

註釋

註釋不會被編譯,每一個包應該有相關注釋。

單行註釋是最常見的註釋形式,你可以在任何地方使用以 // 開頭的單行註釋。多行註釋也叫塊註釋,均已以 /* 開頭,並以 */ 結尾。如:

// 單行註釋
/*
 Author by 入門教學
 我是多行註釋
 */

識別符號

識別符號用來命名變數、型別等程式實體。一個識別符號實際上就是一個或是多個字母(A~Z和a~z)數字(0~9)、下劃線_組成的序列,但是第一個字元必須是字母或下劃線而不能是數字。

以下是有效的識別符號:

mahesh   kumar   abc   move_name   a_123
myname50   _temp   j   a23b9   retVal

以下是無效的識別符號:

  • 1ab(以數字開頭)
  • case(Go 語言的關鍵字)
  • a+b(運算子是不允許的)

字串連線

Go 語言的字串可以通過 + 實現:

例項

package main
import "fmt"
func main() {
    fmt.Println("Google" + "itread01")
}

以上例項輸出結果為:

Googleitread01

關鍵字

下面列舉了 Go 程式碼中會使用到的 25 個關鍵字或保留字:

breakdefaultfuncinterfaceselect
casedefergomapstruct
chanelsegotopackageswitch
constfallthroughifrangetype
continueforimportreturnvar

除了以上介紹的這些關鍵字,Go 語言還有 36 個預定義識別符號:

append bool byte cap close complex complex64 complex128 uint16
copy false float32 float64 imag int int8 int16 uint32
int32 int64 iota len make new nil panic uint64
print println real recover string true uint uint8 uintptr

程式一般由關鍵字、常量、變數、運算子、型別和函式組成。

程式中可能會使用到這些分隔符:括號 (),中括號 [] 和大括號 {}。

程式中可能會使用到這些標點符號:.、,、;、: 和 …。


Go 語言的空格

Go 語言中變數的宣告必須使用空格隔開,如:

var age int;

語句中適當使用空格能讓程式更易閱讀。

無空格:

fruit=apples+oranges;

在變數與運算子間加入空格,程式看起來更加美觀,如:

fruit = apples + oranges; 

格式化字串

Go 語言中使用 fmt.Sprintf 格式化字串並賦值給新串:

例項

package main

import (
    "fmt"
)

func main() {
   // %d 表示整型數字,%s 表示字串
    var stockcode=123
    var enddate="2020-12-31"
    var url="Code=%d&endDate=%s"
    var target_url=fmt.Sprintf(url,stockcode,enddate)
    fmt.Println(target_url)
}

輸出結果為:

Code=123&endDate=2020-12-31

更多內容參見:Go fmt.Sprintf 格式化字串