GO語言基礎學習

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

包(packages)

每個GO程式都有一個個包組成,程式由main包開始運行。
package mainfunc main(){  //do something}



匯入(import)

go語言通過import關鍵字,將所需要使用的包引入到程式中,可以:
import(    "fmt"    "math/rand")
或者
import "fmt"import "math/rand"


函數(Functions)

一個函數可以有0個或多個參數。參數的類型在變數的後面聲明,用空格隔開,函數的傳回型別在括弧後面聲明,如果有多個傳回值,則用括弧括起,用逗號分割,例如
func foo(a,b int) int{if a>b{return a}return b}

這個函數定義是這樣的,函數名為foo,傳回值為int 型,參數為a,b均是intint型 func是關鍵字,聲明這是一個函數參數類型的連續性:如果一個參數沒有宣告類型,那麼這個參數的類型與下一個參數的類型 相同多傳回值:go語言可以定義多個傳回值,以儘可能的減少資料結構例如
func swap(x, y string) (string, string) {    return y, x}
從來沒有如此簡單的實現一個值交換
預定義傳回值變數,這樣寫出來的函數是如此優美並簡單
func split(sum int) (x, y int) {    x = sum * 4 / 9    y = sum - x    return}


變數(variables)

一個變數聲明可以包含初始化,如有一個變數在聲明中存在初始化式,那麼變數的類型可以省略,變數將使用初始化式的常量類型。
var x, y, z int = 1, 2, 3var c, python, java = true, false, "no!"
以上變數定義代碼 x,y,z均為int類型,其初始值分別是1,2,3,c,python是bool類型,初始值為true,false,java是string,值為"no!"
短變數聲明:省略類型的變數可以使用更加簡潔的代碼,例如
c, python, java := true, false, "no!"
省略關鍵字var 在賦值符號前加一個冒號":"

go 語言內建基本類型

boolstringint  int8  int16  int32  int64uint uint8 uint16 uint32 uint64 uintptrbyte // alias for uint8rune // alias for int32     // represents a Unicode code pointfloat32 float64complex64 complex128

常量(contants)常量的聲明像變數一樣,在前面加上const 關鍵字,常量的聲明可以是字元,字串,布爾值以及數實值型別,常量不能使用:=初始化
const Pi = 3.14
而不能const Pi := 3.14可以用括弧聲明一組常量

for迴圈

基本的for迴圈看起來和c,java差不多,只是去掉了括弧:
    for i := 0; i < 10; i++ {        sum += i    }
第一個分號聲明變數i並初始化為0,第二個語句定義迴圈結束條件,第三條語句定義迴圈結束後對迴圈因子的操作
for代替while的行為
i:1for i<100{   //dosomething   i++}

無條件迴圈while(true)
for{    //loop forever}

if條件

if與for的情況差不多,均是省略了括弧
if expression {}

if a>b{}else if a==b{}else{}

if中也可以聲明變數
    if v := math.Pow(x, n); v < lim {        return v    }








func foo(a,b int) int{     return math.Max(a,b)}

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.