關(guān)鍵字 | 作用 |
---|---|
var const | 變量和常量的聲明 |
package import | 導(dǎo)入 |
func | 用于定義函數(shù)和方法 |
return | 用于函數(shù)返回 |
defer someCode | 在函數(shù)退出前執(zhí)行 |
go | 用于并行 |
select | 用于選擇不同類型的通訊 |
interface | 用于定義接口 |
struct | 用于定義抽象數(shù)據(jù)類型 |
break, case, continue, for, falthrough, else, if. switch, goto, defult | 流程控制 |
chan | 用于 channel 通訊 |
type | 用于聲明自定義類型 |
map | 用于聲明 map 類型數(shù)據(jù) |
range | 用于讀取 slice, map, channel 數(shù)據(jù) |
標識符用來命名變量, 類型等程序?qū)嶓w. 一個標識符實際上就是一個或者多個字母 (A-Z 和 a-z), 數(shù)字 (0-9), 下劃線 (_) 組成的序列. 但是第一個字符必須是字母或者下?lián)Q線而不是數(shù)字.
Go 不允許在表示符中使用標點符號, 例如: “@”, “$”, 和 “%”. 并且 Go 是一種區(qū)分大小寫的編程語言.
類型 | 說明 |
---|---|
布爾類型 (Boolean) | true / false |
整數(shù)類型 (Integer) | 1, 2, 3, 4, … |
浮點類型 (Float) | 1.1, 2.2, 3.3, 4.4, … |
字符串類型 (String) | 字符串類型表示字符串值的合集. 字符串是不可變類型, 一旦創(chuàng)建后, 就不可能改變字符串的內(nèi)容. |
派生類型 | 包括指針可型, 數(shù)組類型, 結(jié)構(gòu)類型, 聯(lián)合類型, 函數(shù)類型, 切片類型, 接口類型 |
例子:
package main import "fmt" func main() { // 定義字符串變量 var str = "我是小白呀" // 定義整數(shù)型變量 var integer = 8 // 定義浮點型變量 var float = 1.2 // 定義布爾類型變量 var bool = true fmt.Println("string: ", str, "\ninteger: ", integer, "\nfloat: ", float, "\nboolean: ", bool) }
輸出結(jié)果:
string: 我是小白呀
integer: 8
float: 1.2
boolean: true
格式 1, 指定變量類型, 聲明后再進行賦值:
var 變量名 變量類型 變量名 = 值
格式 2, 根據(jù)值自行判定變量類型:
var 變量名 = 值
格式 3, 省略 var. (注意: “:=” 左側(cè)的變量不應(yīng)該是已經(jīng)聲明過的, 否則會導(dǎo)致編譯錯誤):
v_name := value
例子:
package main import "fmt" func main() { // 方法一 var num1 int // 聲明變量 num1 = 1 // 賦值 fmt.Println(num1) // 調(diào)試輸出 // 方法二 var num2 = 2 // 自行判定變量類型 fmt.Println(num2) // 調(diào)試輸出 // 方法三 num3 := 3 // 省略var fmt.Println(num3) // 調(diào)試輸出 }
輸出結(jié)果:
1
2
3
格式:
var 變量名稱1, 變量名稱2, 變量名稱3 = 值1, 值2, 值2
例子:
package main import "fmt" func main() { // 多變量聲明 var num4, num5, num6 = 1, 2, 3 fmt.Println(num4, num5, num6) // 調(diào)試輸出 }
輸出結(jié)果:
1 2 3
所有像 int, float, bool 和 string 這些基本類型都屬于值類型. 使用這些類型的變量直接指向存在內(nèi)存中的值.
當使用等號 “=” 將一個變量賦值給另一個變量時 (num2 = num1). 實際上在內(nèi)存中將 num1 的值進行了拷貝.
例子:
package main import "fmt" func main() { // 定義變量 var num1 = 2 var num2 = num1 // 調(diào)試輸出值和地址 fmt.Println(num1, num1) fmt.Println(num2, num2) }
輸出結(jié)果:
2 0xc0000ac058
2 0xc0000ac070
到此這篇關(guān)于手把手帶你走進Go語言之語法基礎(chǔ)解析的文章就介紹到這了,更多相關(guān)Golang 語法基礎(chǔ)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
標簽:延邊 嘉峪關(guān) 黑龍江 張掖 江西 宜賓 新余 武漢
巨人網(wǎng)絡(luò)通訊聲明:本文標題《手把手帶你走進Go語言之語法基礎(chǔ)解析》,本文關(guān)鍵詞 手把手,帶你,走進,語,言之,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。