標籤:使用 os for ar 代碼 amp type ad
1、:=是不能用在函數外,如果要聲明全域變數請用關鍵字var。
2、常量是
const Name = value
3、如果變數要宣告類型:
xxx int:=1;
4、布爾值的類型為bool,值是true或false,預設為false。
5、GO語言的變數類型轉換必須是顯示轉換,也就是要有相關的代碼。
6、文本和其它類型不能直接通過+相連,要先轉換類型。
7、GO語言的變數可以以組為單位申請
var( i int pi float32 prefix string)
8、大寫字母開頭的變數是可匯出的,也就是其它包可以讀取的,是公用變數;小寫字母開頭的就是不可匯出的,是私人變數。
大寫字母開頭的函數也是一樣,相當於class中的帶public關鍵詞的公有函數;小寫字母開頭的就是有private關鍵詞的私人函數。
9、數組這樣聲明:
var arr [n]type
10、動態數組用slice聲明
11、if的條件是不加括弧的
12、在名字的尾部加個冒號代表標籤,然後可以用goto跳到:
here:goto here
13、for的寫法:
for index:=0; index < 10 ; index++ { sum += index }
14、類似while的文法:
sum := 1for sum < 1000 { sum += sum}
15、GO語言是可以返還多個值:
func SumAndProduct(A, B int) (int, int) { return A+B, A*B}
16、指標用法
//簡單的一個函數,實現了參數+1的操作func add1(a *int) int { // 請注意, *a = *a+1 // 修改了a的值 return *a // 返回新值}func main() { x := 3 fmt.Println("x = ", x) // 應該輸出 "x = 3" x1 := add1(&x) // 調用 add1(&x) 傳x的地址 fmt.Println("x+1 = ", x1) // 應該輸出 "x+1 = 4" fmt.Println("x = ", x) // 應該輸出 "x = 4"}
17、使用關鍵字defer可以使程式先跳過等到執行完再返回執行
func ReadWrite() bool { file.Open("file") defer file.Close() if failureX { return false } if failureY { return false } return true}
18、如果有很多調用defer,那麼defer是採用後進先出模式,所以如下代碼會輸出4 3 2 1 0