日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

golang基礎語法

Go 程序可以由多個標記組成,可以是關鍵字,標識符,常量,字符串,符號。

Go 語言的基礎組成有以下幾個部分:

  • 包聲明
  • 引入包
  • 函數
  • 變量
  • 語句 & 表達式
  • 注釋

基本語法介紹

行分隔符

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

注釋

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

字符串連接

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

關鍵字

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

golang基礎語法

 

程序一般由關鍵字、常量、變量、運算符、類型和函數組成。

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

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

示例代碼

package main

import (
	"fmt"
	"math"
	"time"
)

func main() {
	// hello world
	/**
	hello world
	*/
	fmt.Println("hello world")

	fmt.Println("##################### values")
	values()

	fmt.Println("##################### variables")
	variables()

	fmt.Println("##################### constants")
	constants()

	fmt.Println("##################### forFunc")
	forFunc()

	fmt.Println("##################### ifElse")
	ifElse()

	fmt.Println("##################### switchFunc")
	switchFunc()
}

// 值
func values() {
	// 字符串拼接用 +
	fmt.Println("hello " + "world " + "!")
	// 整數和浮點數
	fmt.Println("1+2 =", 1+2)
	fmt.Println("11-1 =", 11-1)
	fmt.Println("99*99 =", 99*99)
	fmt.Println("8.0/3.0 =", 8.0/3.0)
	// 布爾型
	fmt.Println(true && false)
	fmt.Println(true || false)
	fmt.Println(!true)
}

// 變量
func variables() {
	// var 聲明 1 個或者多個變量。
	var a string = "hello"
	fmt.Println(a)
	var b, c int = 3, 5
	fmt.Println(b, c)

	// 會自動推斷已經初始化的變量類型。
	var d = true
	fmt.Println(d)

	// 聲明變量且 初始化為0
	var e int
	fmt.Println(e)

	// := 簡寫會自動推斷類型,只能用在初始化
	f := "short"
	fmt.Println(f)
}

// 常量
// 全局常量
const con = "const"

func constants() {
	fmt.Println(con)

	// const 語句可以出現在任何 var 語句可以出現的地方
	const num = 500 * 500 * 500
	// 常數表達式可以執行任意精度的運算
	const num2 = 4e21 / num
	fmt.Println(num2)
	// 數值型常量是沒有確定的類型的,直到它們被給定了一個類型,比如說一次顯示的類型轉化。
	fmt.Println(int64(num2))

	// 當上下文需要時,一個數可以被給定一個類型,比如變量賦值或者函數調用。
	// 舉個例子,這里的 math.Sin函數需要一個 float64 的參數。
	fmt.Println(math.Sin(num))
}

// For循環
func forFunc() {
	// 最常用的方式,帶單個循環條件。
	i := 1
	for i <= 4 {
		fmt.Println(i)
		i = i + 1
	}

	// 經典的初始化/條件/后續形式 for 循環。
	for j := 6; j <= 8; j++ {
		fmt.Println(j)
	}

	// 不帶條件的 for 循環將一直執行,直到在循環體內使用了 break 或者 return 來跳出循環。
	for {
		fmt.Println("for...")
		break
	}

	for n := 0; n <= 7; n++ {
		if n%2 == 0 {
			continue
		}
		fmt.Println(n)
	}
}

// if/else
func ifElse() {
	if 9%2 == 0 {
		fmt.Println("9 is even")
	} else {
		fmt.Println("9 is odd")
	}

	// 你可以不要 else 只用 if 語句。
	if 12%4 == 0 {
		fmt.Println("12 is divisible by 4")
	}

	// 在條件語句之前可以有一個語句;
	// 任何在這里聲明的變量都可以在所有的條件分支中使用。
	if num := 7; num < 0 {
		fmt.Println(num, "正數")
	} else if num < 10 {
		fmt.Println(num, "小于10")
	} else {
		fmt.Println(num, "其他")
	}

	// 注意,在 Go 中,你可以不適用圓括號,但是花括號是需要的。
	// Go 里沒有三目運算符,
	// 所以即使你只需要基本的條件判斷,你仍需要使用完整的 if 語句。
}

// 分支結構
func switchFunc() {
	i := 2
	switch i {
	case 1:
		fmt.Println("1")
	case 2:
		fmt.Println("2")
	case 3:
		fmt.Println("3")
	}

	// 在一個 case 語句中,你可以使用逗號來分隔多個表達式。
	// 在這個例子中,我們很好的使用了可選的default 分支。
	switch time.Now().Weekday() {
	case time.Saturday, time.Sunday:
		fmt.Println("星期天")
	default:
		fmt.Println("工作日")
	}

	// 不帶表達式的 switch 是實現 if/else 邏輯的另一種方式。
	//  這里展示了 case 表達式是如何使用非常量的。
	t := time.Now()
	switch {
	case t.Hour() < 12:
		fmt.Println("12點前")
	default:
		fmt.Println("12點后,包含12點")
	}

	// 這里是一個函數變量
	whatAmI := func(i interface{}) {
		switch t := i.(type) {
		case bool:
			fmt.Println("bool")
		case int:
			fmt.Println("int")
		default:
			fmt.Printf("什么類型 %Tn", t)
		}
	}
	whatAmI(true)
	whatAmI(1)
	whatAmI("嘿")
}

分享到:
標簽:golang
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定